Maison >développement back-end >tutoriel php >Avertissement PHP : mysqli_query() : solution à une requête vide
Lorsque vous utilisez PHP pour développer des applications Web, vous rencontrez souvent divers problèmes. Parmi eux, certains problèmes courants sont liés à la base de données MySQL. Un problème est l'erreur « Avertissement PHP : mysqli_query() : requête vide ». Cet article explique les causes de cette erreur et comment y remédier.
Tout d'abord, voyons ce que signifie cette erreur. Lorsque vous exécutez une requête MySQL à l'aide de la fonction mysqli_query, cette erreur se produit si la requête est vide. Cela signifie que vous avez essayé d'exécuter une requête MySQL, mais que la chaîne de requête était vide. Par exemple, la chaîne de requête dans le code suivant est vide :
$result = mysqli_query($conn, "");
Lorsque vous essayez d'exécuter cette requête, elle Cette erreur se produit. Cela peut se produire dans diverses situations. Voici quelques-unes des raisons :
Alors, comment résoudre ce problème ? Voici quelques solutions possibles :
Par exemple, la chaîne de requête suivante :
$sql = "SELECT * FROM myTable WHERE id = ";
When $ Lorsque la variable id n'est pas définie, la chaîne de requête est vide. Vous devez ajouter une valeur $id ou modifier la chaîne de requête en :
$sql = "SELECT * FROM myTable";
Par exemple, le code suivant utilise des variables pour créer une chaîne de requête :
$name = "Tom";
$sql = "SELECT * FROM myTable WHERE name = '$name'";
Vous pouvez utiliser la fonction mysqli_real_escape_string pour échapper aux variables :
$name = "Tom";
$ name = mysqli_real_escape_string( $conn, $name);
$sql = "SELECT * FROM myTable WHERE name = '$name'";
Cela garantira que la chaîne de requête n'est pas vide , même si $name contient des guillemets simples ou doubles.
Résumé :
Lors de l'utilisation de la fonction mysqli_query pour exécuter une requête MySQL, si la chaîne de requête est vide, l'erreur "Avertissement PHP : mysqli_query() : requête vide" s'affichera apparaître . Cela peut être dû à des erreurs de syntaxe, des variables non définies ou des erreurs de connexion MySQL, etc. Pour résoudre ce problème, vous pouvez vérifier les erreurs de syntaxe dans la chaîne de requête, vous assurer que le serveur MySQL est en cours d'exécution et connecté correctement, utiliser la fonction mysqli_real_escape_string pour échapper à la variable afin de vous assurer que la chaîne de requête n'est pas vide.
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!