Maison >développement back-end >tutoriel php >Pourquoi l'erreur « Le nombre de variables de liaison ne correspond-elle pas au nombre de champs dans l'instruction préparée » se produit-elle lors des requêtes INSERT ?

Pourquoi l'erreur « Le nombre de variables de liaison ne correspond-elle pas au nombre de champs dans l'instruction préparée » se produit-elle lors des requêtes INSERT ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-31 04:12:02557parcourir

 Why Does

Le nombre de variables de liaison ne correspond pas au nombre de champs dans l'instruction préparée lors de l'insertion de données

Lorsque vous essayez d'insérer des données dans une base de données à l'aide de l'extension mysqli de PHP, vous pouvez rencontrez l'erreur suivante :

Warning: mysqli_stmt::bind_result(): Number of bind variables doesn't
match number of fields in prepared statement in
E:\XAMPP\htdocs\account\lib\register.php on line 73

Cette erreur se produit lorsque vous spécifiez une variable de liaison pour chaque champ dans la requête INSERT, mais que la requête ne renvoie aucun résultat. Pour résoudre ce problème, vous devez supprimer la ligne qui lie les résultats :

<code class="php">$stmt->bind_result($user, $pw);</code>

L'extrait de code modifié ressemblerait à ceci :

<code class="php">$conn->prepare("INSERT INTO login(user, pass) VALUES(?, ?)");
$stmt->bind_param("ss", $user, $pw);
$stmt->execute();</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn