Maison > base de données > tutoriel mysql > Comment utiliser correctement l'opérateur LIKE avec les instructions préparées PDO ?

Comment utiliser correctement l'opérateur LIKE avec les instructions préparées PDO ?

DDD
Libérer: 2024-12-05 07:12:15
original
793 Les gens l'ont consulté

How Do I Correctly Use the LIKE Operator with PDO Prepared Statements?

Implémentation d'une requête LIKE dans PDO

Lors de l'utilisation de l'opérateur LIKE dans les requêtes PDO, il est essentiel de garantir la syntaxe correcte pour obtenir la recherche souhaitée résultats. Dans la requête fournie, le placement incorrect des signes % dans la chaîne $query est à l'origine du problème.

Correction syntaxique

La requête modifiée doit inclure les signes % dans le tableau $params, pas dans la chaîne de requête :

$query = "SELECT * FROM tbl WHERE address LIKE ? OR address LIKE ?";
$params = array("%$var1%", "%$var2%");
Copier après la connexion

Cette modification garantit que l'opérateur LIKE opère sur les variables $var1 et $var2 tout en les échappant dans l'instruction préparée.

Explication

Dans PDO, les instructions préparées utilisent des espaces réservés (?) pour représenter des valeurs dynamiques. Lors de l'exécution de la requête, le tableau $params fournit les valeurs correspondantes pour remplacer les espaces réservés. Dans la requête d'origine, les signes % ont été placés dans la chaîne $query, ce qui a amené le PDO à les traiter comme des caractères littéraux.

En déplaçant les signes % dans le tableau $params, vous indiquez qu'ils font partie des valeurs dynamiques recherchées, plutôt qu'une partie de la syntaxe de la requête elle-même.

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!

source:php.cn
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