Heim > Backend-Entwicklung > PHP-Tutorial > Warum löst mein PHP-MySQLi-Code den Fehler „Aufruf der undefinierten Methode mysqli_stmt::get_result()' aus?

Warum löst mein PHP-MySQLi-Code den Fehler „Aufruf der undefinierten Methode mysqli_stmt::get_result()' aus?

Mary-Kate Olsen
Freigeben: 2024-12-26 21:11:10
Original
572 Leute haben es durchsucht

Why Does My PHP MySQLi Code Throw a

MySQLi: Behebung des Fehlers „Aufruf der undefinierten Methode mysqli_stmt::get_result()“

In PHP, wenn eine MySQL-Abfrage mit MySQLi ausgeführt wird, Der Fehler „Aufruf der undefinierten Methode mysqli_stmt::get_result()“ kann typischerweise auftreten tritt auf, wenn der native MySQL-Treiber (mysqlnd) nicht installiert ist.

Beachten Sie den folgenden Codeausschnitt:

$stmt = $conn->mysqli->prepare($query);
$stmt->bind_param('sss', $_POST['EmailID'], $_POST['SLA'], $_POST['Password']);
$stmt->execute();
$result = $stmt->get_result();
Nach dem Login kopieren

In diesem Beispiel ist $result = $stmt->get_result() ;-Zeile löst den Fehler „Aufruf der undefinierten Methode mysqli_stmt::get_result()“ aus. Dies liegt daran, dass die Methode get_result() dies erfordert der mysqlnd-Treiber, der nicht immer in der Webhosting-Umgebung installiert ist.

Um dieses Problem zu beheben, stellen Sie sicher, dass der mysqlnd-Treiber aktiviert ist. Sie können seine Installation überprüfen, indem Sie die phpinfo()-Ausgabe überprüfen oder einen Befehl verwenden wie:

php -i | grep mysqlnd
Nach dem Login kopieren

Wenn der mysqlnd-Treiber nicht installiert ist, befolgen Sie diese Schritte:

Für Debian-basierte Systeme:

sudo apt-get install php-mysqlnd
Nach dem Login kopieren

Für Red Hat-basierte Systeme:

sudo yum install php-mysqlnd
Nach dem Login kopieren

Für Mac OS X mit Homebrew:

brew install php-mysqlnd
Nach dem Login kopieren

Für Windows Systeme:

Installieren Sie die neueste Version von PHP mit aktiviertem mysqlnd-Treiber.

Nach der Installation des mysqlnd-Treibers ist es notwendig, den Webserver neu zu starten, um die Änderungen zu laden. Sobald der Treiber installiert und aktiviert ist, funktioniert die Methode get_result() ordnungsgemäß.

Wenn mysqlnd nicht installiert werden kann, können Sie alternativ die Methoden bind_result() und fetch() verwenden, um die Ergebnisse der Abfrage abzurufen . Diese Methoden sind weniger effizient als get_result(), erfordern aber keinen mysqlnd-Treiber.

Das obige ist der detaillierte Inhalt vonWarum löst mein PHP-MySQLi-Code den Fehler „Aufruf der undefinierten Methode mysqli_stmt::get_result()' aus?. 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