Heim >Backend-Entwicklung >PHP-Tutorial >Warum gibt mein Code bei Verwendung von INSERT die Fehlermeldung „Anzahl der Bindevariablen stimmt nicht mit der Anzahl der Felder in der vorbereiteten Anweisung überein' aus?
INSERT – Bindungsergebnisse einer nicht resultierenden Abfrage
Der Fehler „Anzahl der Bindungsvariablen stimmt nicht mit der Anzahl der vorbereiteten Felder überein.“ „Anweisung“ tritt auf, wenn versucht wird, Ergebnisse aus einer vorbereiteten Anweisung zu binden, die keine Ergebnisse zurückgibt. In Ihrem Codeausschnitt haben Sie nach der Ausführung der INSERT-Anweisung einen bind_result-Aufruf eingefügt.
Dies ist falsch, da INSERT eine ergebnislose Abfrage ist, die keine zu bindenden Zeilen erzeugt. Folglich versucht der bind_result-Aufruf, eine Bindung an nicht vorhandene Felder herzustellen, was zu dem Fehler führt.
Um dieses Problem zu beheben, entfernen Sie einfach die folgende Zeile aus Ihrem Code:
<code class="php">$stmt -> bind_result($user, $pw);</code>
Nach dem Entfernen In dieser Zeile führt Ihr Code die INSERT-Anweisung erfolgreich aus, ohne dass der Fehler „Bind-Variablen-Nichtübereinstimmung“ auftritt.
Das obige ist der detaillierte Inhalt vonWarum gibt mein Code bei Verwendung von INSERT die Fehlermeldung „Anzahl der Bindevariablen stimmt nicht mit der Anzahl der Felder in der vorbereiteten Anweisung überein' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!