vieaiepie
Messages postés4Date d'inscriptionvendredi 2 juillet 2004StatutMembreDernière intervention29 mars 2006
-
5 mars 2006 à 10:57
thomvaill
Messages postés366Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention20 février 2007
-
6 mars 2006 à 13:47
Bonjour,
J'ai fais un fichier php qui permet d'importer des données à partir d'un fichier texte (fichier de 400 lignes de code que je ne vais pas détailler ici). Ce fichier est lancé à partir d'un formulaire en methode post.
J'ai l'impression que le code est executé 2 fois, je comprends pas pourquoi, un exemple cette fonction
function retour_id_pseudo($pseudo) {
$pseudo=substr($pseudo,0,25);
$query="select id_pseudo from ged_pseudo where pseudo='".$pseudo."'";
$result = mysql_query($query);
if ($val = mysql_fetch_array($result)) {
return $val["id_pseudo"];
}
else {
$query="insert into ged_pseudo values ('','".$pseudo."')";
$result=mysql_query($query);
$query="select id_pseudo from ged_pseudo where pseudo='".$pseudo."'";
$result = mysql_query($query);
if ($val = mysql_fetch_array($result)) {
return $val["id_pseudo"];
}
}
return 0;
}
Est lancé un seul fois a partir du script, mais le pseudo est inséré 2 fois dans la base.
J'ai peut etre oublier quelque chose, mais je comprends pas.
vieaiepie
Messages postés4Date d'inscriptionvendredi 2 juillet 2004StatutMembreDernière intervention29 mars 2006 5 mars 2006 à 11:40
Salut,
oui , j'ecrase la variable!!
Cette fonction permet de si le pseudo exsite, il renvoir le id_pseudo, sinon, il insere une nouvelle ligne dans la table, et envoi le id_pseudo du nouveau créé.
Mais cette focntion est appellé qu'une seule fois a partir du fichier script, et qu'il inserer '(pas toujours) 2 fois un nouveau pseudo.
C'est juste un exemple de mon script, il le fait avec d'autre fonction ....
J'ai l'impression que mon fichier php est lancé 2 fois en simultanée, enfin, je comprends pas vraiment!!! Ya pas une truc de timeout a faire, ou je sais pas moi !!!
vieaiepie
Messages postés4Date d'inscriptionvendredi 2 juillet 2004StatutMembreDernière intervention29 mars 2006 5 mars 2006 à 11:55
Et non, je n'appelle pas 2 fois la fonction...; :(
voici la ligne d'appel de la fonction
$id_pseudo=retour_id_pseudo($_POST['Pseudo']);
echo "id pseudo= ".$id_pseudo."
";
En plus, il n' y a pas que la que ca merdouille !!!! cette fonction est juste un exemple, en fait, dans certain cas (mias je n'arrive pas a comprends quand) j'ai l'impresion que le fichier php principal est executé 2 fois, alors qu'il est lancé à partir d'un formulaire mais il ecrit les echo qu'une seule fois, c'est un truc de dingueeeeeeeeee
:-(
Marie.
Vous n’avez pas trouvé la réponse que vous recherchez ?
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 5 mars 2006 à 15:02
Au passage, après un insert(), tu peux utiliser mysql_insert_id() pou récupérer l'ID du champ en AUTO INCREMENT d'une base SQL sans avoir à refaire un SELECT derrière !