Heim > Datenbank > MySQL-Tutorial > Warum erhalte ich in PHP den Fehler „Aufruf einer Mitgliedsfunktion query() bei Null'?

Warum erhalte ich in PHP den Fehler „Aufruf einer Mitgliedsfunktion query() bei Null'?

Patricia Arquette
Freigeben: 2024-10-29 05:16:31
Original
981 Leute haben es durchsucht

Why am I getting the

Fehlerbehebung beim Fehler „Call to a Member Function query() on Null“

Im bereitgestellten Code wird der Fehler „Schwerwiegender Fehler: Call to a member function query() on null“ kommt in Zeile 7 von login.php vor. Dieser Fehler weist darauf hin, dass die Variable $db, bei der es sich voraussichtlich um ein MySQL-Objekt handelt, null ist, wenn versucht wird, eine Abfrage mit der Methode query() auszuführen.

Lösung:

Bei näherer Betrachtung des Codes stellen wir fest, dass die Initialisierung der $db-Variablen außerhalb der Funktion user_exists() platziert ist, wo sie verwendet wird. Das bedeutet, dass $db innerhalb der Funktion nicht definiert ist und daher null ist. Um dieses Problem zu beheben, müssen wir $db als Parameter an die Funktion user_exists() übergeben. Hier ist der korrigierte Code:

<code class="php">function user_exists($db, $username) {
    // ...
}</code>
Nach dem Login kopieren

Und in login.php können Sie die Funktion jetzt wie folgt aufrufen:

<code class="php">$result = $db->query("SELECT COUNT(UserId) FROM users WHERE UserName = '$username'");</code>
Nach dem Login kopieren

Durch die Übergabe von $db als Parameter stellen wir sicher, dass die Die Funktion hat Zugriff auf das MySQLi-Objekt und kann die Abfrage erfolgreich ausführen.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich in PHP den Fehler „Aufruf einer Mitgliedsfunktion query() bei Null'?. 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