Heim > Backend-Entwicklung > PHP-Tutorial > Warum erhalte ich die Fehlermeldung „Aufruf der undefinierten Methode mysqli_stmt::get_result()'?

Warum erhalte ich die Fehlermeldung „Aufruf der undefinierten Methode mysqli_stmt::get_result()'?

Mary-Kate Olsen
Freigeben: 2024-12-26 10:42:15
Original
613 Leute haben es durchsucht

Why am I getting a

Undefiniertes Problem beim Aufruf der Methode „mysqli_stmt::get_result()“

Beim Versuch, die Methode „get_result()“ von „mysqli_stmt“ zu verwenden Beim Abrufen von Abfrageergebnissen im Objekt wird „Undefinierte Methode aufrufen“ angezeigt. Fehler „mysqli_stmt::get_result()“.

Ursache des Problems:

Der Fehler weist darauf hin, dass die Methode „get_result()“ für das Objekt „mysqli_stmt“ nicht verfügbar ist. Dies kann durch den fehlenden „mysqlnd“-Treiber verursacht werden.

Lösung:

  1. Mysqlnd-Treiber installieren:

    Dieser Treiber ist nützlich für die Verwendung von „ get_result ()“-Methode ist entscheidend. Bitte stellen Sie sicher, dass es auf Ihrem Webspace installiert ist.

  2. Verwenden Sie bind_result() und fetch():

    Wenn Sie den „mysqlnd“-Treiber nicht installieren können, können Sie „bind_result()“ verwenden ”- und „fetch()“-Methoden, um Abfrageergebnisse zu erhalten. Diese Methoden werden vom Treiber „mysqlnd“ nicht beeinflusst. Der Beispielcode lautet wie folgt:

$stmt->bind_result($emailVerified, $blocked);
$stmt->fetch();
Nach dem Login kopieren
  1. Check mysqli_stmt->execute() Rückgabewert:

    Stellen Sie sicher, dass die Methode „mysqli_stmt->execute()“ erfolgreich ausgeführt wurde. Wenn es „false“ zurückgibt, wird kein Ergebnis für das „stmt“-Objekt gesetzt.

Beispiel:

Hier ist der geänderte Code, der das Problem gelöst hat:

include 'conn.php';
$conn = new Connection();
$query = 'SELECT EmailVerified, Blocked FROM users WHERE Email = ? AND SLA = ? AND `Password` = ?';
$stmt = $conn->mysqli->prepare($query);
$stmt->bind_param('sss', $_POST['EmailID'], $_POST['SLA'], $_POST['Password']);

if ($stmt->execute()) {
    $stmt->bind_result($emailVerified, $blocked);
    $stmt->fetch();
    // Use $emailVerified and $blocked here...
} else {
    echo "Error executing statement: " . $stmt->error;
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Fehlermeldung „Aufruf der undefinierten Methode mysqli_stmt::get_result()'?. 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