Maison > base de données > tutoriel mysql > Pourquoi est-ce que j'obtiens l'erreur « Erreur fatale : Appel à une fonction membre query() sur null » ?

Pourquoi est-ce que j'obtiens l'erreur « Erreur fatale : Appel à une fonction membre query() sur null » ?

Mary-Kate Olsen
Libérer: 2024-10-28 12:32:02
original
831 Les gens l'ont consulté

Why am I getting the error

"Erreur fatale : appel à une fonction membre query() sur null" Expliqué

Cette erreur survient lors de la tentative d'accès à la requête ( ) méthode d'une variable nulle. Généralement, cela se produit lorsque vous tentez d'exécuter des requêtes de base de données sans établir de connexion à la base de données ou lorsque la variable $db n'a pas été correctement initialisée.

Diagnostic :

Dans le code fourni, l'erreur semble provenir de la ligne 7 :

<code class="php">$result = $db->query("SELECT COUNT(UserId) FROM users WHERE UserName = '$username'");</code>
Copier après la connexion

Cependant, la ligne 3 du code initialise la variable $db :

<code class="php">$db = new mysqli('127.0.0.1', 'root', '', 'wisconsindairyfarmers');</code>
Copier après la connexion

Solution :

Pour résoudre ce problème, assurez-vous que la variable $db est initialisée et valide avant de l'utiliser dans la méthode query(). Dans ce cas, il semble que la variable $db soit définie en dehors de la fonction user_exists(). Pour y accéder au sein de la fonction, passez-le en paramètre :

<code class="php">function user_exists($db, $username) {
    // ...
}</code>
Copier après la connexion

Ensuite, appelez la fonction comme ceci :

<code class="php">user_exists($db, $username);</code>
Copier après la connexion

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal