Ich habe eine SQL-Anweisung zu aktualisieren, bestätigen Sie Code und Code in der Datenbank. Ich verwende bind param, um die Variablen zu binden. Es funktionierte gut für meine Auswahl und Einfügen von SQL-Anweisungen. Allerdings gibt es immer wieder diesen Fehler:Update sql mit Bind param
Fatal error: Uncaught Error: Call to a member function bind_param() on boolean
wenn ich versuchte, die Update-Abfrage auszuführen. Ich habe versucht, in jedem Forum zu suchen, fand aber keine Antworten und ich hoffe, dass jemand meinen Fehler entdecken könnte. Ich habe Probleme mit $query1
. Sowohl Code als auch Bestätigungscode sind Varchar und nicht Integer.
$username = $_GET['username'];
$code = $_GET['code'];
$confirmcode = "1";
$updatecode ="0";
$query=$con->prepare("SELECT username, code FROM customer_detail WHERE username ='$username'");
$query->execute();
$query->bind_result($checkusername, $checkcode);
$query->fetch();
$query1=$con->prepare("UPDATE customer_detail SET code=?, confirmcode=? WHERE username = ?"); //error
$query1->bind_param('sss',$username, $updatecode, $confirmcode); //error
$query1->execute();
Ihre erste Abfrage schlägt fehl; Du hast nichts zu binden. –
danke für Ihre Antwort. Ich habe tatsächlich Probleme mit der 2. Abfrage, die erste Abfrage funktioniert gut –
Tun Sie ein 'echo $ query1-> Fehler;' und sehen, was es ausspuckt. Das heißt, Sie versuchen, vorbereitete Anweisungen für die erste Abfrage zu verwenden, aber Sie binden die Variable nicht tatsächlich mit einem Platzhalter, so dass Sie wie immer verwundbar sind. – Qirel