Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di atenea
    Registrato dal
    May 2009
    Messaggi
    82

    Aiuto, bloccare invio dati form con dati dupplicati.

    Salve a tutti.
    Ho guardato tutte soluzioni che ci sono nel forum ma non funzionano con il mio codice.


    codice:
    <?php 
    	include_once("res/php_script/funzioni.php");
    ?>
    <script language="javascript" src="res/js_script/jquery-1.4.2.min.js" type="text/javascript"></script>
    <script language="javascript" src="res/js_script/jquery-ui-1.8.5.custom.min.js" type="text/javascript"></script>
    <script language="javascript" type="text/javascript">
    	function aggiungiArticolo(){
    		var y = document.getElementById("tab_articoli");
    		var x = y.insertRow(-1);//per inserire la nuova riga all'ultima posizione
    		var row_no = x.rowIndex;
    			var i = 0;
    			var a = x.insertCell(i);
    			a.innerHTML = '<input type="text" id="codice'+row_no+'" name="articolo[]" size=4/>';
    			var b = x.insertCell(++i);
    			b.innerHTML = 'segli articolo<input type="text" id="nome'+row_no+'" name="nome[]" size="20"/>';
    			var d = x.insertCell(++i);
    			d.innerHTML = '<input type="text" id="prezzo_unitario'+row_no+'" value=0 size=10 name="prezzo_unitario[]"/>';
    			var e = x.insertCell(++i);
    			e.innerHTML = '<input type="text" id="qta'+row_no+'" name="qta[]" value="1" size=5 onblur="calcTotArt('+row_no+')"/>';
    			var f = x.insertCell(++i);
    			f.innerHTML = '<input type="text" id="prezzo_complessivo'+row_no+'" name="prezzo_complessivo[]" size=10/>';
    			var g = x.insertCell(++i);
    			g.innerHTML = '<input type="text" id="sconto'+row_no+'" name="sconto[]" size=3/>';
    			var h = x.insertCell(++i);
    			h.innerHTML = '<select id="iva'+row_no+'" name="iva[]"><option value="20">20%</option><option value="10">10%</option><option value="4">4%</option></select>';
    			var i = x.insertCell(++i);
    			i.innerHTML = '[img]res/img/design/elimina.jpg[/img]';
    	}
    	
    	function pickListArticoli(row_no){
    		window.open('moduli/preventivi/popup_prodotti.php?curr_row='+row_no,'Scegli articolo','width=300,height=400,scrollbars=yes');	
    	}
    	function calcTotArt(row){
    		var total = document.getElementById("prezzo_complessivo"+row);
    		var prezzo_unitario = parseFloat(document.getElementById("prezzo_unitario"+row).value);
    		var qta = parseFloat(document.getElementById("qta"+row).value);
    		//alert("prezzo u. "+prezzo_unitario+" qta. :"+qta);
    		tot = qta * prezzo_unitario;
    		total.value = tot;
    	}
    	function rimuoviArticolo(row_no){
    		var tabella = document.getElementById("tab_articoli");
    		tabella.deleteRow(row_no);
    	}
            
    function ckInput(campo){
      $('input[id^="codice"]').each(function (i,el) {
          if(el.value == campo.value && el.id != campo.id && el.value != ""){
              alert("valori dupplicati non ammessi");
              return false;
          }
                  });
                  return true;
    }
    function doppioni(){
      $('input[id^="codice"]').each(function (i,el) {
          if(!ckInput(el)){return false;}
      });
      return true;
    }
    </script>
    <div id="int_blu"></div>
    <?php
     $anno = date('Y');
     $max_n = gest_query_select("MAX(n) as ultimo","documento_vendita","tipo_tupla = '0' and anno = '".$anno."'");
    if ($max_n){
    	$res = mysql_fetch_assoc($max_n);
    	$n = $res['ultimo']+1;
    }else{
    	$n = 1;	 
    }
    ?>
    <div id="contenuto">
    <form action="moduli/preventivi/azioni.php" method="post" id="frm_nuovo_prev"  onSubmit="doppioni()">
    <fieldset>
    	<legend>Dati preventivo</legend>
    	<label>Numero</label><input type="text" name="num" size="8" value="<?php echo $n;?> "/> <input type="text" size="4" name="anno" value="<?php echo $anno;?> "/>
    	<label>Data preventivo</label><input id="data" type="text" name="data" value=""/><input type="hidden" id="data_prev" name="data_prev" />
    
    </fieldset>
    <fieldset>
    	<legend>Dati cliente</legend>
        <label>Codice</label><input type="text" id="cod_cliente" name="cod_cliente" >
    
        <label>Cliente</label><textarea name="dati_cliente" cols="25" rows="4" disabled="disabled" id="dati_cliente"></textarea>
        Inserisci cliente
    </fieldset>
    
    <fieldset>
    	<legend>Articoli in preventivo</legend>
        <input type="button" value="agg. articolo" onclick="javascript:aggiungiArticolo()"/>
        <table width="800" id="tab_articoli">
        	<thead>
            	<th>cod.</th> <th>Articolo</th> <th>Prezzo unitario</th> <th>Qt&agrave;</th> <th>Prezzo compl.</th> <th>sconto</th> <th>IVA</th> <th>Azioni</th>
        	</thead>
        </table>
        <input type="button" value="agg. articolo" onclick="javascript:aggiungiArticolo()"/>
    </fieldset>
    <input type="submit" name="azione" value="Crea preventivo" onclick="return doppioni();"/>
    </form>
    </div>
    gli alert funzionato, ma me ne mostra sempre più di uno, e poi i dati vengono inviati comunque alla pagina php di elaborazione.

    Sapete dirmi dov'è che ho sbagliato??

    grazie mille per ogni vostro suggerimento
    ^_^

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Perché aprire una nuova discussione?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di atenea
    Registrato dal
    May 2009
    Messaggi
    82
    perchè il problema è diverso! scusate se non dovevo
    ^_^

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.