Maison >base de données >tutoriel mysql >Comment utiliser les instructions préparées avec LIKE pour les recherches insensibles à la casse ?

Comment utiliser les instructions préparées avec LIKE pour les recherches insensibles à la casse ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2025-01-16 11:58:03371parcourir

How to Use Prepared Statements with LIKE for Case-Insensitive Searches?

Déclarations préparées et recherches LIKE insensibles à la casse

Pour exploiter les instructions préparées pour des recherches LIKE efficaces et sécurisées tout en conservant l'insensibilité à la casse, évitez d'intégrer directement des variables dans votre requête SQL. Utilisez plutôt des requêtes paramétrées. Voici comment procéder :

Construisez votre requête SQL avec des espaces réservés :

<code class="language-sql">SELECT * FROM `users` WHERE username LIKE ?;</code>

Préparez la variable en préfixant et en ajoutant des caractères génériques (%), puis liez-la à l'espace réservé à l'aide de bind_param. Cette méthode gère efficacement la correspondance insensible à la casse.

<code class="language-php">$likeVar = "%{$yourParam}%";
$stmt->bind_param("s", $likeVar);</code>

Cette approche est particulièrement cruciale dans les scénarios dynamiques, tels qu'une fonction de recherche de nom d'utilisateur de joueur qui met à jour les résultats en temps réel au fur et à mesure que l'utilisateur tape. La préparation de l'instruction avec une clause LIKE paramétrée évite les vulnérabilités d'injection SQL et permet des recherches efficaces et insensibles à la casse.

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