Maison  >  Article  >  développement back-end  >  Pourquoi mon code renvoie-t-il « Le nombre de variables de liaison ne correspond pas au nombre de champs dans l'instruction préparée » lors de l'utilisation de INSERT ?

Pourquoi mon code renvoie-t-il « Le nombre de variables de liaison ne correspond pas au nombre de champs dans l'instruction préparée » lors de l'utilisation de INSERT ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-27 18:27:30216parcourir

Why does my code throw

INSERT - Résultats de liaison d'une requête sans résultat

L'erreur "Le nombre de variables de liaison ne correspond pas au nombre de champs dans le fichier préparé "instruction" se produit lors d'une tentative de liaison des résultats d'une instruction préparée qui ne renvoie aucun résultat. Dans votre extrait de code, vous avez inclus un appel bind_result après avoir exécuté l'instruction INSERT.

Ceci est incorrect car INSERT est une requête sans résultat qui ne produit aucune ligne à lier. Par conséquent, l'appel bind_result tente de se lier à des champs inexistants, ce qui entraîne l'erreur.

Pour résoudre ce problème, supprimez simplement la ligne suivante de votre code :

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

Après la suppression cette ligne, votre code exécutera l'instruction INSERT avec succès sans rencontrer l'erreur de non-concordance de variable de liaison.

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