replicazione inserimento

Ho un problema con l'inserimento dei dati tramite form.

Mi inserisce 2 volte gli stessi risultati come faccio a fare un controllo per vedere cosa succede.

<script language="javascript" type="text/javascript">

      

function Invia(valore) {

  var lnk;

  if (valore == 'FINE')

   lnk = "inserisci_A.php";

  else if (valore == 'AVANTI')

   lnk = "inserisci_B.php";

  document.getElementById('test').action = lnk;   

  document.getElementById('test').submit();

}

 

      

</script>

      

<form name="tstest" onSubmit="return form_validator(this)" method=post enctype="multipart/form-data" action="" id="test"> 

...

<input type="submit" name="pag1" value="FINE" onClick="Invia(this.value);"> 

<input type="submit" name="pag2" value="AVANTI" onClick="Invia(this.value);" style="width:70px">

</form>

Mettiamo che uno vada sul pulsante FINE e venga rediretto su inserisci_A.php. Qui c'è una INSERT che in qualche modo viene replicata 2 volte...

come faccio a rintracciare il problema???
inviato 9 anni fa
stellina
X 0 X

quindi il problema è che la richiesta a inserisci_A.php arriva 2 volte? Sempre?

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

sembrerebbe di si, solo che non nso come rintracciare il problema.

risposto 9 anni fa
stellina
X 0 X

Ma tu riesci a riprodurre il problema ad ogni tentativo di inserimento oppure è una cosa random?

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

avviene ogni volta che inseriasco  :'(

risposto 9 anni fa
stellina
X 0 X

l'unico caso in ncui non avviene la replicazione dei risultati è questo:

se dimentico di inserire un valore in un campo obbligatiori o appare un messagio di errore in javascript, e se premo ok al posto di farmi il focus sul campo in questione fa l'inserimento.

L'inserimento non risulta replicato, ha tutti i campi inseriti tranne quello obbligatorio che non è stato inserito.

non capisco .... :o

 :tichedoff:

risposto 9 anni fa
stellina
X 0 X

ok, un errore l'ho visto: quando usi onSubmit="return form_validator(this)" non devi lanciare il submit da form_validator perché se form_validator ritorna true allora viene fatto un submit (indipendentemente da un eventuale submit fatto dalla funzione)

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

scusa ma non ho bene capito cosa fare per risolvere il problema

questo è parte del codice di form_validator

<SCRIPT language="JavaScript" type="text/javascript">
function form_validator(tstest) 
{ 
   if(tstest.id_cliente.value == "") { 
   alert("Selezionare il cliente"); 
   tstest.id_cliente.focus(); 
   return(false); 
   }
      
....

non so dove sbattere la test sono gironi che tento strade diverse ma niente...

ho anche provato a togliere il controllo in js ma non cambia niente

di una cosa sono certa lo stesso procedimento di inserimento fatto su singola pagina funziona!

 :-\

risposto 9 anni fa
stellina
X 0 X

nel tuo primo messaggio avevi messo l'istruzione:

document.getElementById('test').submit();

che invece andava tolta perché il submit già viene effettuato dal form in automatico

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

era proprio quello il problema grazie

risposto 9 anni fa
stellina
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda