Maison > base de données > tutoriel mysql > Comment récupérer correctement plusieurs résultats de recherche en utilisant LIKE dans MySQLi ?

Comment récupérer correctement plusieurs résultats de recherche en utilisant LIKE dans MySQLi ?

Mary-Kate Olsen
Libérer: 2025-01-20 06:17:13
original
1054 Les gens l'ont consulté

How to Properly Fetch Multiple Search Results Using LIKE in MySQLi?

Utilisez l'instruction LIKE de MySQLi pour obtenir efficacement plusieurs résultats de recherche

Cet article explique comment utiliser MySQLi pour obtenir plusieurs résultats à partir d'une requête LIKE.

Le code d'origine fourni dans la question tente d'obtenir une seule ligne de résultats, mais cela ne convient pas aux scénarios dans lesquels plusieurs lignes peuvent être renvoyées. Pour obtenir tous les résultats correctement, vous pouvez utiliser :

$param = "%{$_POST['user']}%";
$stmt = $db->prepare("SELECT id, username FROM users WHERE username LIKE ?");
$stmt->bind_param("s", $param);
$stmt->execute();
$result = $stmt->get_result();
$data = $result->fetch_all(MYSQLI_ASSOC);
Copier après la connexion

Alternativement, à partir de PHP 8.2, vous pouvez utiliser le code plus concis suivant :

$sql = "SELECT id, username FROM users WHERE username LIKE ?";
$result = $db->execute_query($sql, ["%{$_POST['user']}%"]);
$data = $result->fetch_all(MYSQLI_ASSOC);
Copier après la connexion

Si vous préférez la syntaxe traditionnelle fetch et bind_result, vous pouvez utiliser le code suivant :

$param = "%{$_POST['user']}%";
$stmt = $db->prepare("SELECT id, username FROM users WHERE username LIKE ?");
$stmt->bind_param("s", $param);
$stmt->execute();

$stmt->bind_result($id, $username);
while ($stmt->fetch()) {
  echo "Id: {$id}, Username: {$username}";
}
Copier après la connexion

Ces extraits de code mis à jour garantissent que toutes les lignes correspondantes sont récupérées de la base de données, vous permettant d'accéder aux données selon vos besoins.

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 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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal