Requete INSERT ne fonctionne pas
Résolu
Bonjour, j'aimerai savoir si quelqu'un a une idée de pourquoi cette requete ne fonctionne pas :
Chaque fois, le résultat retourné est 0 lignes :s.
Merci.
EDIT: Précision du langage dans la coloration syntaxique.
Le vin ne résout pas les problème, mais l'eau et le lait non plus.
L'argent ne fait pas le bonheur, mais on est mieux en Lotus qu'en 206.
if($rows == 0) {
$date = date('Y-m-d');
$tquery = "INSERT INTO users(id, pseudo, pass, mail, rang, avatar, join) VALUES('', :pseudo, :pass, :mail, :rang, :avatar, :join)";
$query2 = $sql->prepare($tquery) ;
$array = array(
":pseudo" => $pseudo,
":pass" => $pass,
":mail" => $mail,
":rang" => "Membre",
":avatar" => "[https://cdn3.iconfinder.com/data/icons/softwaredemo/PNG/256x256/User1.png]",
":join" => $date
);
$query2->execute($array);
echo "<pre>";
print_r($array);
echo "</pre>";
$rows2 = $query2->rowCount();
echo "$rows2 ligne insérée.";
echo "<br />Enregistrement réussi ! Vous pouvez vous connecter <b><a href='login.php'>en cliquant ici.</a></b>";
}
Chaque fois, le résultat retourné est 0 lignes :s.
Merci.
EDIT: Précision du langage dans la coloration syntaxique.
Le vin ne résout pas les problème, mais l'eau et le lait non plus.
L'argent ne fait pas le bonheur, mais on est mieux en Lotus qu'en 206.
3 réponses
-
Je vous informe que ça n'a pas du tout avancé ^^'.
Voici la structure de la table :
http://puu.sh/hQiGT/9beb13ffe1.png
Et le code total :
https://pastebin.com/TjKJNzd5
Franchement, si quelqu'un a la réponse, je l'en remercie grandement, car il ne me reste quasi que ça à faire :s.
Merci.
-
Tu as vérifié dans la base de données si la ligne était quand même insérée.
Dans ton fichier de connexion à la base de données, j'avais ajouté ce paramètre à $sql : "PDO::MYSQL_ATTR_FOUND_ROWS => true"
Parce que dans certaines situations, le nombre de lignes était incorrect. Je ne me rappelle plus de la raison ^^ -
@totoyo47Dans la base de données, aucun ligne n'est ajoutée, je vérifie dans le phpmyadmin à chaque fois ^^.
Du coup je fais du sur place. :/
-
-
J'informe que quand je fais ça
$query2 = $sql->prepare("INSERT INTO users (pseudo, pass, mail, rang, avatar, join) VALUES (:pseudo, :pass, :mail, :rang, :avatar, NOW())");
$query2->execute(array(
":pseudo" => $pseudo,
":pass" => $pass,
":mail" => $mail,
":rang" => "Membre",
":avatar" => "url.jpg"
)) or die(print_r($sql->errorInfo()));
J'obtiens ceci :
"Array ( [0] => 00000 [1] => [2] => ) 1"
Et la page arrête de se charger.
-
Résolu.
Pour les prochains par la suite.
Sachez que JOIN est un nom réservé. Alors oui, 5 heures de recherches pour ça, j'ai un peu les boules. M'enfin.
Bonne chance, et merci.