Heim  >  Artikel  >  Datenbank  >  Wie verwende ich LIKE und bindParam in PDO korrekt, um Benutzernamen zuzuordnen, die mit einem bestimmten Zeichen beginnen?

Wie verwende ich LIKE und bindParam in PDO korrekt, um Benutzernamen zuzuordnen, die mit einem bestimmten Zeichen beginnen?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-14 13:28:02399Durchsuche

How to Correctly Use LIKE and bindParam in PDO to Match Usernames Starting with a Specific Character?

Übereinstimmung von Benutzernamen, die mit einem Zeichen beginnen, mithilfe von LIKE und bindParam in PDO

Bei Datenbankabfragen mithilfe von bindParam mit PDO können Sie auf Szenarien stoßen, in denen Sie Sie müssen den LIKE-Operator verwenden, um nach Teilübereinstimmungen von Daten zu suchen. Insbesondere möchten Sie möglicherweise Benutzernamen abrufen, die mit einem bestimmten Zeichen beginnen, in diesem Fall als „a“ bezeichnet.

Um dies mit der korrekten Verwendung von LIKE und bindParam zu erreichen, vermeiden Sie es, den bindParam-Platzhalter in einfache Anführungszeichen zu setzen. Die korrekte Syntax lautet:

$term = "a%";

Der Code zeigt einen Fehler beim Versuch, ein %' als Platzhalterkriterium anstelle eines % auszuführen.

Denken Sie daran, dass bindParam sicherstellt, dass alle Zeichenfolgenwerte gültig sind werden bei der Übergabe an die SQL-Anweisung entsprechend in Anführungszeichen gesetzt. Daher ist das Einschließen des Platzhalters in Anführungszeichen unnötig und führt zu einer falschen Übereinstimmung.

Die korrigierte Abfrage sollte wie folgt lauten:

$term = "a%";

$sql = "SELECT username 
        FROM `user` 
        WHERE username LIKE :term 
        LIMIT 10";      

$stmt = $core->dbh->prepare($sql);
$stmt->bindParam(':term', $term, PDO::PARAM_STR);
$stmt->execute();
$data = $stmt->fetchAll();

Dieser Code ruft erfolgreich alle Benutzernamen ab, die mit dem beginnen Zeichen 'a' durch korrekte Anwendung des LIKE-Operators innerhalb der bindParam-Verwendung.

Das obige ist der detaillierte Inhalt vonWie verwende ich LIKE und bindParam in PDO korrekt, um Benutzernamen zuzuordnen, die mit einem bestimmten Zeichen beginnen?. 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