Heim >Backend-Entwicklung >PHP-Tutorial >Warum löst meine Funktion mysqli_fetch_array() den Fehler „Argument Nr. 1 muss vom Typ mysqli_result sein' aus und wie kann ich ihn beheben?
In MySQLi treten Fehler wie „mysqli_fetch_array(): Argument Nr. 1 muss vom Typ mysqli_result sein“ auf weist auf einen Fehler bei der Ausführung der SQL-Abfrage hin. Um dieses und andere ähnliche Probleme zu lösen, befolgen Sie diese Richtlinien:
Immer mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT) einschließen; vor der MySQL-Verbindung, um detaillierte Fehlermeldungen anzuzeigen. PHP generiert dann schwerwiegende Fehler für MySQL-Fehler und macht die Fehlerquelle klar.
Ersetzen Sie PHP-Variablen in SQL-Abfragen durch Fragezeichen. Führen Sie die Abfrage mit einer vorbereiteten Anweisung wie $stmt = $mysqli->prepare("SELECT id, description FROM tbl_page_answer_category WHERE cur_own_id = ?"); aus. Dies verhindert Syntaxfehler, die durch nicht übereinstimmende Token oder ungültige Eingaben verursacht werden.
Untersuchen Sie die von MySQL erzeugte Fehlermeldung. Es enthält den Dateinamen, die Zeilennummer und eine detaillierte Erläuterung des Problems. Konzentrieren Sie sich darauf, den Fehler zu verstehen, anstatt nur eine schnelle Lösung zu finden. Stellen Sie sicher, dass die Tabelle vorhanden ist, die Abfragesyntax korrekt ist und dass der Logikfluss den Abfrageausführungspunkt erreicht.
Wenn die Abfrage scheinbar ausgeführt wird, aber keine Ergebnisse liefert, berücksichtigen Sie diese Faktoren:
Das obige ist der detaillierte Inhalt vonWarum löst meine Funktion mysqli_fetch_array() den Fehler „Argument Nr. 1 muss vom Typ mysqli_result sein' aus und wie kann ich ihn beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!