Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich mit mysqli effizient mehrere Ergebnisse aus einer MySQL-LIKE-Abfrage abrufen?

Wie kann ich mit mysqli effizient mehrere Ergebnisse aus einer MySQL-LIKE-Abfrage abrufen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-13 15:44:13785Durchsuche

How Can I Efficiently Retrieve Multiple Results from a MySQL LIKE Query Using mysqli?

Abfragen mit LIKE und Abrufen mehrerer Ergebnisse in MySQL

Der in der Frage bereitgestellte Code versucht, eine LIKE-Abfrage durchzuführen und mehrere Ergebnisse abzurufen stößt auf Probleme. Die folgenden Schritte beschreiben die richtige Vorgehensweise:

  1. Abfrage vorbereiten:

    $param = "%{$_POST['user']}%";
    $stmt = $db->prepare("SELECT id, username FROM users WHERE username LIKE ?");
  2. Binden Parameter:

    $stmt->bind_param("s", $param);
  3. Abfrage ausführen:

    $stmt->execute();
  4. Fetch the Ergebnisse als Array:
    Ab PHP 8.2 ab:

    $result = $stmt->get_result();
    $data = $result->fetch_all(MYSQLI_ASSOC);

    Vor PHP 8.2:

    $result = $stmt->store_result();
    while ($row = $result->fetch_assoc()) {
        $data[] = $row;
    }
  5. Alternativ Ergebnisse inkrementell abrufen:

    $stmt->bind_result($id, $username);
    while ($stmt->fetch()) {
        echo "Id: $id, Username: $username";
    }

Dieser überarbeitete Code stellt sicher, dass alle übereinstimmenden Ergebnisse abgerufen werden, auch wenn es mehrere sind Zeilen werden zurückgegeben. Die in der Antwort angegebenen Referenzen erläutern die verwendeten Techniken weiter.

Das obige ist der detaillierte Inhalt vonWie kann ich mit mysqli effizient mehrere Ergebnisse aus einer MySQL-LIKE-Abfrage abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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