Heim >Backend-Entwicklung >PHP-Tutorial >Warum gibt „mysqli_num_rows()' „erwartet, dass Parameter 1 mysqli_result ist, boolescher Wert gegeben' zurück?
PHP & MySQL: Fehler beim Parameter mysqli_num_rows() behoben
Der Fehler „mysqli_num_rows() erwartet, dass Parameter 1 mysqli_result ist, boolean gegeben“ zeigt an, dass die Funktion ein gültiges MySQL-Ergebnisobjekt als ersten Parameter erwartet, aber übergeben wird ein boolescher Wert.
In diesem Fall wird das Problem durch die im mysqli_query()-Aufruf verwendete Abfrage verursacht, die einen Syntaxfehler enthält. Das Problem liegt bei der SELECT-Anweisung:
SELECT users.*, profile.* FROM users INNER JOIN contact_info ON contact_info.user_id = users.user_id WHERE users.user_id=3");
Die Abfrage versucht, einen inneren Join zwischen den Tabellen „users“ und „contact_info“ durchzuführen, aber es fehlt eine JOIN-Klausel. Die richtige Abfrage sollte so aussehen:
SELECT users.*, profile.* FROM users INNER JOIN profile ON profile.user_id = users.user_id WHERE users.user_id=3");
Sobald die Abfrage behoben ist, sollte mysqli_query() ein gültiges Ergebnisobjekt zurückgeben, das dann als erster Parameter an mysqli_num_rows() übergeben werden kann.
Das obige ist der detaillierte Inhalt vonWarum gibt „mysqli_num_rows()' „erwartet, dass Parameter 1 mysqli_result ist, boolescher Wert gegeben' zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!