Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 36
  1. #1

    Chrome registrazione dati doppi nella tabella

    Ciao a tutti,
    ho riscontrato questo grave problema con Chrome 17 su form che passano variabili POST in una tabella e vorrei sapere se qualcun'altro ha avuto lo stesso problema.

    codice:
    $dbhost = "localhost";
    $dbuser = "admin";
    $dbpass = "password";
    $dbname = "miodatabase";
    $db = mysql_connect($dbhost, $dbuser, $dbpass); 
    mysql_select_db($dbname, $db); 
    $sql="INSERT INTO prodotti (name) VALUES ('a')";
    mysql_db_query($dbname,$sql,$db);
    mysql_close($db);
    Richiamando un file in php chiamato prova_add.php da browser queste semplici righe dovrebbero inserire nella tabella "prodotti" una recorda con name = a

    Se lo richiamo da Firefox mi inserisce un record
    name = a

    Se lo richiamo da Chrome 17 me ne inserisce due
    name =a
    name =a

    Ho provato da 3 server, Aruba, Inet e Tuonome con 4 browser, Firefox, IE 8, Chrome 15 e Chrome 17

    Solo con Chrome 17 mi vengono registrati 2 record ad ogni richiamo.
    Pensate che se la variabile "a" la richiamo da un form di una seconda pagina in metodo POST mi registra due record (sempre chrome)

    name = a
    name = (vuoto)

    Qualcuno ha qualche idea ?
    Grazie
    Informazione finanziaria: http://www.dominosolutions.it

  2. #2
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    non credo sia possibile, sbagli qualcosa ma non saprei cosa dovresti postare tutto il codice

  3. #3
    Certo può essere che sbaglio io qualcosa, il codice è quello, niente di più.

    Perchè non lo copi e non lo provi su uno dei tuoi server ? Se da te funziona con Chrome 17 allora so per certo che sto sbagliando, ma ho provato, ripeto, su 3 server, 3 database diversi e il problema era il medesimo.

    Ditemi cosa è sbagliato nel codice che ho postato, nella pagina c'è solo quello.

    Grazie
    Informazione finanziaria: http://www.dominosolutions.it

  4. #4
    Non è chiaro se per fare le prove hai chiamato direttamente la pagina prova_add.php digitandola sulla barra degli indirizzi del browser oppure se ci sei arrivato da un form html tramite submit. Nel secondo caso posta anche la pagina html contenente il form.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Ho provato tutti e due i modi,

    nel primo caso ho provato a spedire le variabili col POST tramite questo form, ovviamente nel codice di richiamo non c'era 'a' ma '$_POST[name]'

    codice:
    <script language="JavaScript">
    function ControlloEta() {
    var f = document.primo;
    if(f.name.value == "") 
    { 
    alert("Il campo nome è obbligatorio") 
    f.name.focus(); 
    return false; 
    } 
    return true;
    }
    </script>
    
    <form enctype="multipart/form-data" method="post" action="prova_add.php" name="primo" onSubmit="return ControlloEta()">
    
    Nome:
    
    <input type="text" name="name" class="textform_lungo">
    
    
    
    
    
    
    <input type="submit" name="action" value="Inserisci prodotto">
    </form>
    Nel secondo caso invece richiamavo la pagina prova_add.php direttamente da browser.
    Informazione finanziaria: http://www.dominosolutions.it

  6. #6
    Mi sembra alquanto strano, per non dire impossibile, che invocando direttamente uno script esso venga eseguito due volte, considerando anche che esso gira lato server. Purtroppo non utilizzo Chrome per cui tocca attendere che qualcuno faccia una prova in tal senso.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Originariamente inviato da satifal
    Mi sembra alquanto strano, per non dire impossibile, che invocando direttamente uno script esso venga eseguito due volte, considerando anche che esso gira lato server. Purtroppo non utilizzo Chrome per cui tocca attendere che qualcuno faccia una prova in tal senso.
    Non posso che darti ragione, è stranissimo, infatti era quasi convinto che il problema fosse lato server, ma 3 server diversi ?

    Magari il mio codice è errato, dando un occhiata vedete qualcosa di strano nel codice ?

    Grazie a tutti, sto diventando pazzo con sto problema, in pratica tutti i miei form danno il medesimo problema e se non capisco dov'è l'inghippo non so proprio come fare.
    Informazione finanziaria: http://www.dominosolutions.it

  8. #8
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    te l'ho un po' modificato perchè usavi delle funzioni deprecate, comunque mi inserisce un solo record con chrome

    Codice PHP:
    $dbhost "localhost";
    $dbuser "admin";
    $dbpass "password";
    $dbname "miodatabase";
    $db mysql_connect($dbhost$dbuser$dbpass); 
    mysql_select_db($dbname$db); 
    $sql="INSERT INTO prodotti (name) VALUES ('a')";
    mysql_query($sql);
    mysql_close($db); 

  9. #9
    Ok, ho usato il tuo codice ma mi da lo stesso problema, su tutti e 3 i server.
    Ho provato persino a richiamare il file da Blackberry pensando ad un problema del mio pc, ma uguale, due record inseriti.
    Informazione finanziaria: http://www.dominosolutions.it

  10. #10
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    semplice, perché lo chiami due volte

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 © 2025 vBulletin Solutions, Inc. All rights reserved.