Probleme double insertion

bricethenetman Messages postés 72 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 3 mai 2008 - 27 avril 2008 à 19:31
bricethenetman Messages postés 72 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 3 mai 2008 - 27 avril 2008 à 23:43
Bonjour,

J'ai cherché toute la journée (google, relecture du code, tests manuels avec phpmyadmin...) mais je n'ai pas pu isolé le problème.

Je suis sous WAMP en locale pour le développement, j'ai créer un formulaire d'insertion de données dans une BDD MySql. Tout se passe bien sauf qu'a chaque soumission j'ai deux insertion : une insertion classique + une insertion vide.

Par insertion vide j'entend, deuxieme incrémentation de 1er champ et insertion de la date dans mon 20e champs (DATE TIME).

Ce qui est bizarre c'est que cela se produit uniquement sur Firefox, pas de probleme sur IE, pas de problème en insertion manuelle via PhpMyAdmin...

Quelqu'un aurait une idée ?

8 réponses

Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
27 avril 2008 à 20:10
Hello,

mets le code où tu reçois les données puis les insères svp.
à+
0
bricethenetman Messages postés 72 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 3 mai 2008
27 avril 2008 à 21:03
voila
<?php
@mysql_connect("localhost", "root","");
@mysql_select_db("mlv");

$t02 = $_POST['t02'];
$t03 = $_POST['t03'];
if (empty($_POST['t04a'])) {$t04 = '';} else {$t04 = "".$_POST['t04a']." ".$_POST['t04b']."";}
$t05 = addslashes($_POST['t05']);
$t06 = $_POST['t06'];
$t07 = $_POST['t07'];
$t08 = $_POST['t08'];
$t09 = $_POST['t09'];
$t10 = htmlentities(addslashes($_POST['t10']));
$t11 = '';
$t12 = $_POST['t12'];
$t13 = $_POST['t13'];
$t14 = "".$_POST['t14a']." ".$_POST['t14b']."";
$t15 = "".$_POST['t15a']." ".$_POST['t15b']."
".$_POST['t15c']." ".$_POST['t15d']."";
$t16 = $_POST['t16'];
$t17 = $_POST['t17'];
$t18 = '';
$t19 = $_POST['t19'];
$t20 = date("Y-m-d H:i:s");
$t21 = $_POST['t21'];

$requete = mysql_query("INSERT INTO emploi (t01, t02, t03, t04, t05, t06, t07, t08, t09, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20, t21) VALUES (NULL, '$t02', '$t03', '$t04', '$t05', '$t06', '$t07', '$t08', '$t09', '$t10', '$t11', '$t12', '$t13', '$t14', '$t15', '$t16', '$t17', '$t18', '$t19', '$t20', '$t21');");

    if($requete)
    {
        echo 'Votre annonce a &eacute;t&eacute; ajout&eacute; avec succ&eacute;s.';
        exit();
    }
    else
    {
        echo 'Votre annonce n\'a pas pu être soumise.';
        exit();
    }

@mysql_close();
?>
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
27 avril 2008 à 21:20
A priori il n'y a rien qui puisse causer une double insertion là, est-ce que tu n'aurais pas mis ce bout de code dans une boucle quelconque ?
0
bricethenetman Messages postés 72 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 3 mai 2008
27 avril 2008 à 21:56
Non c'est pour ca que je ne comprend pas, puisqu'en plus ca fontionne sur IE...

Est ce qu'un plantage de mon Firefox pourrait faire ca?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
27 avril 2008 à 22:11
Non je ne vois pas trop quel genre de bug tu aurais. Surtout que la première l'enregistrement est bon, l'autre il est vide... tu n'aurais pas un refresh, ou un header, qqch comme ça, qui te ramènerait à un endroit où les données sont de nouveau envoyées ?

à+
0
bricethenetman Messages postés 72 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 3 mai 2008
27 avril 2008 à 22:53
Non je n'ai rien jai dénudé le script au minimum pour détecter l'erreur je ne comprends pas...

Jai remarqué quelquechose qui peut peut etre faire avancé les chose. Lors du deuxieme enregistrement seul les variables qui ne proviennent pas directement du formulaire (methode POST) sont enregistré : c'est à dire celle généré dans le script de traitement comme la $t20...
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
27 avril 2008 à 23:03
hmmm... il manque une info pour que je puisse savoir d'où vient l'erreur...

bon, déjà mets une condition qui fait qu'un message d'erreur s'affiche si les variables post ne sont pas définies, tu y verras peut-être plus clair.

à+
0
bricethenetman Messages postés 72 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 3 mai 2008
27 avril 2008 à 23:43
ok jvais essayer ca merci quand meme
0