MySQLi : Résolution de l'erreur "Appel à la méthode non définie mysqli_stmt::get_result()
En PHP, lors de l'exécution d'une requête MySQL avec MySQLi, l'erreur "Appel à la méthode non définie mysqli_stmt::get_result()" peut survenir. Ce problème se produit généralement lorsque le. Le pilote natif MySQL (mysqlnd) n'est pas installé.
Considérez l'extrait de code suivant :
$stmt = $conn->mysqli->prepare($query); $stmt->bind_param('sss', $_POST['EmailID'], $_POST['SLA'], $_POST['Password']); $stmt->execute(); $result = $stmt->get_result();
Dans cet exemple, la ligne $result = $stmt->get_result(); l'erreur "Appel à la méthode non définie mysqli_stmt::get_result()" est due au fait que la méthode get_result() nécessite mysqlnd. pilote, qui n'est pas toujours installé sur l'environnement d'hébergement Web.
Pour remédier à ce problème, assurez-vous que le pilote mysqlnd est activé. Vous pouvez vérifier son installation en vérifiant la sortie phpinfo() ou en utilisant une commande telle que :
php -i | grep mysqlnd
Si le pilote mysqlnd n'est pas installé, suivez ces étapes :
Pour les applications basées sur Debian systèmes :
sudo apt-get install php-mysqlnd
Pour les systèmes basés sur Red Hat :
sudo yum install php-mysqlnd
Pour Mac OS X utilisant Homebrew :
brew install php-mysqlnd
Pour les systèmes Windows :
Installez le dernière version de PHP avec le pilote mysqlnd activé.
Après avoir installé le pilote mysqlnd, il est nécessaire de redémarrer le serveur web pour charger les modifications. Une fois le pilote installé et activé, la méthode get_result() fonctionnera correctement.
Alternativement, si mysqlnd ne peut pas être installé, vous pouvez utiliser les méthodes bind_result() et fetch() pour récupérer les résultats de la requête. . Ces méthodes sont moins efficaces que get_result() mais ne nécessitent pas le pilote mysqlnd.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!