Heim > Datenbank > MySQL-Tutorial > Wie rufe ich mit LIKE in MySQLi ordnungsgemäß mehrere Suchergebnisse ab?

Wie rufe ich mit LIKE in MySQLi ordnungsgemäß mehrere Suchergebnisse ab?

Mary-Kate Olsen
Freigeben: 2025-01-20 06:17:13
Original
982 Leute haben es durchsucht

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

Verwenden Sie die LIKE-Anweisung von MySQLi, um effizient mehrere Suchergebnisse zu erhalten

In diesem Artikel wird erläutert, wie Sie mit MySQLi mehrere Ergebnisse aus einer LIKE-Abfrage erhalten.

Der in der Frage bereitgestellte Originalcode versucht, eine einzelne Ergebniszeile abzurufen. Dies ist jedoch nicht für Szenarien geeignet, in denen möglicherweise mehrere Zeilen zurückgegeben werden. Um alle Ergebnisse korrekt zu erhalten, können Sie Folgendes verwenden:

<code class="language-php">$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);</code>
Nach dem Login kopieren

Alternativ können Sie ab PHP 8.2 den folgenden prägnanteren Code verwenden:

<code class="language-php">$sql = "SELECT id, username FROM users WHERE username LIKE ?";
$result = $db->execute_query($sql, ["%{$_POST['user']}%"]);
$data = $result->fetch_all(MYSQLI_ASSOC);</code>
Nach dem Login kopieren

Wenn Sie die traditionelle Syntax fetch und bind_result bevorzugen, können Sie den folgenden Code verwenden:

<code class="language-php">$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}";
}</code>
Nach dem Login kopieren

Diese aktualisierten Codeausschnitte stellen sicher, dass alle übereinstimmenden Zeilen aus der Datenbank abgerufen werden, sodass Sie bei Bedarf auf die Daten zugreifen können.

Das obige ist der detaillierte Inhalt vonWie rufe ich mit LIKE in MySQLi ordnungsgemäß mehrere Suchergebnisse ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage