Heim > Backend-Entwicklung > PHP-Tutorial > Warum gibt „mysqli_num_rows()' einen booleschen Wert anstelle eines „mysqli_result'-Objekts zurück?

Warum gibt „mysqli_num_rows()' einen booleschen Wert anstelle eines „mysqli_result'-Objekts zurück?

Patricia Arquette
Freigeben: 2024-11-29 03:14:12
Original
569 Leute haben es durchsucht

Why Does `mysqli_num_rows()` Return a Boolean Instead of a `mysqli_result` Object?

PHP & MySQL: mysqli_num_rows() erwartet, dass Parameter 1 mysqli_result ist, boolean gegeben

Problem

Beim Integrieren von HTML Purifier in ein PHP-Skript, In Zeile 22 tritt ein Fehler auf: mysqli_num_rows() erwartet Parameter 1 bis sei mysqli_result, boolean gegeben. Der Fehler wird ausgelöst, wenn versucht wird, die Anzahl der von einer MySQL-Abfrage zurückgegebenen Zeilen zu überprüfen.

Lösung

Der Fehler wird durch eine falsche SQL-Abfrage in Zeile 22 verursacht, die lautet:

$dbc = mysqli_query($mysqli,"SELECT users.*, profile.*
                                 FROM users 
                                 INNER JOIN contact_info ON contact_info.user_id = users.user_id 
                                 WHERE users.user_id=3");
Nach dem Login kopieren

Der Fehler lautet: „Sie treten nirgendwo mit einem Profil bei.“ Dies bedeutet, dass die Abfrage versucht, die Benutzer- und Profiltabellen in der Spalte „user_id“ zu verknüpfen, die Profiltabelle jedoch nicht in der FROM-Klausel enthalten ist.

Um das Problem zu beheben, muss die Profiltabelle in einbezogen werden die FROM-Klausel, etwa so:

$dbc = mysqli_query($mysqli,"SELECT users.*, profile.*
                                 FROM users 
                                 INNER JOIN profile ON contact_info.user_id = users.user_id 
                                 WHERE users.user_id=3");
Nach dem Login kopieren

Mit dieser Änderung verbindet die Abfrage die Benutzer- und Profiltabellen korrekt und gibt die gewünschten Ergebnisse zurück.

Das obige ist der detaillierte Inhalt vonWarum gibt „mysqli_num_rows()' einen booleschen Wert anstelle eines „mysqli_result'-Objekts zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage