Heim >Backend-Entwicklung >PHP-Tutorial >Warum löst mein PHP-MySQLi-Code den Fehler „Aufruf der undefinierten Methode mysqli_stmt::get_result()' aus?
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();
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
Wenn der mysqlnd-Treiber nicht installiert ist, befolgen Sie diese Schritte:
Für Debian-basierte Systeme:
sudo apt-get install php-mysqlnd
Für Red Hat-basierte Systeme:
sudo yum install php-mysqlnd
Für Mac OS X mit Homebrew:
brew install php-mysqlnd
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!