Maison >développement back-end >tutoriel php >Pourquoi `mysqli_num_rows()` renvoie-t-il \'attend-il que le paramètre 1 soit mysqli_result, booléen donné\' ?

Pourquoi `mysqli_num_rows()` renvoie-t-il \'attend-il que le paramètre 1 soit mysqli_result, booléen donné\' ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-28 03:28:15503parcourir

Why Does `mysqli_num_rows()` Return

PHP et MySQL : correction de l'erreur de paramètre mysqli_num_rows()

L'erreur "mysqli_num_rows() s'attend à ce que le paramètre 1 soit mysqli_result, booléen donné" indique que la fonction attend un objet de résultat MySQL valide comme premier paramètre, mais reçoit un booléen value.

Dans ce cas, le problème est dû à la requête utilisée dans l'appel mysqli_query(), qui contient une erreur de syntaxe. Le problème vient de l'instruction SELECT :

SELECT users.*, profile.*
FROM users 
INNER JOIN contact_info ON contact_info.user_id = users.user_id 
WHERE users.user_id=3");

La requête tente d'effectuer une jointure interne entre les utilisateurs et les tables contact_info, mais il manque une clause JOIN. La requête correcte devrait ressembler à ceci :

SELECT users.*, profile.*
FROM users 
INNER JOIN profile ON profile.user_id = users.user_id 
WHERE users.user_id=3");

Une fois la requête corrigée, mysqli_query() devrait renvoyer un objet de résultat valide, qui peut ensuite être transmis comme premier paramètre à mysqli_num_rows().

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:
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