Utilisation de LIKE dans bindParam pour une requête MySQL PDO (fixe)
L'opérateur LIKE de MySQL permet la correspondance de modèles dans les requêtes. Lorsque vous utilisez bindParam pour transmettre des valeurs pour la correspondance de modèles, il est important de formater correctement les valeurs pour garantir que la requête s'exécute comme prévu.
Envisagez une requête pour rechercher les noms d'utilisateur commençant par la lettre « a » :
SELECT username FROM `user` WHERE username LIKE :term LIMIT 10
Lors de l'utilisation de bindParam pour l'espace réservé :term, la valeur doit être transmise sous forme de chaîne. Cependant, si vous ajoutez des guillemets simples dans la chaîne, la requête fera correspondre la valeur littérale "'a%'" au lieu de "a%".
Pour résoudre ce problème, omettez simplement les guillemets simples internes. :
$term = "a"; $term = "$term%";
Cela garantit que la valeur bindParam est transmise en tant que modèle de chaîne approprié qui peut être utilisé efficacement dans la clause LIKE.
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!