Erreur fatale: Appel d'une fonction membre fetch_row() sur boolean
Je suis en train de SÉLECTIONNER COMPTER le nombre Total des enregistrements d'une table, ce que je fais mal ? merci d'avance
J'obtiens cette erreur
Erreur fatale: Appel d'une fonction membre fetch_row() sur boolean
<?php
$mysqli = new mysqli('localhost','root','','testing');
//Output any connection error
if ($mysqli->connect_error) {
die('Error : ('. $mysqli->connect_errno .') '. $mysqli->connect_error);
}
//get total number of records
$results = $mysqli->query("SELECT COUNT(*) FROM users");
$get_total_rows = $results->fetch_row(); //hold total records in variable
$mysqli->close();
?>
Vous devez vous connecter pour publier un commentaire.
Votre code fonctionne tant que la table existe.
J'ai créé un tableau simple comme ci-dessous:
Et inséré une ligne dans votre code:
Que l'imprimé 3 sur l'écran. Mais je peux reproduire l'erreur que vous voyez si j'ai mal orthographié le nom de la table.
Alors vérifiez que vous avez en fait le nom de la table correcte.
Je parie que la valeur de
$results
est FAUX, pas un jeu de résultats, parce que je devine que vous avez une erreur SQL. essayez d'exécuter l'instruction SQL client, ou de vérifier en ligne pour une erreur:$results = $mysqli->query("SELECT COUNT(*) FROM users") or die($mysqli->error);
Vous pouvez aussi vérifier d'abord si vous avez d'erreur lors de l'interrogation le script avant d'accéder à la suite.
Que les états de documentation, mysqli::query Retourne FALSE en cas d'échec. De sorte que vous pouvez d'abord vérifier votre instruction SQL via la console mysql.
Je suis tombé sur cette même erreur aujourd'hui et trouve cette question par le biais d'un moteur de recherche.
J'ai pu résoudre en ajoutant
$stmt->close();
à la fin de la requête qui a couru avant.J'ai eu le même problème.