sql >> Database teknologi >  >> RDS >> Mysql

Parametriserede forespørgsler PHP/MySQL

Jeg forstår ikke rigtig, hvad dit spørgsmål er, men jeg gætter på, at du ikke ved, hvordan du tilføjer % ? Hvis ja, prøv dette:

$stmt = $db->prepare("SELECT * FROM table_1 WHERE name LIKE ? ORDER BY bid DESC");
$stmt->bindValue(1, "%{$_GET['s']}%", PDO::PARAM_STR);
$stmnt->execute();
// fetch and win! :-)

En lille forklaring: PDO vil citere og undslippe parameteren ? passende. Det betyder, at hvis du binder hello , PDO vil erstatte ? med 'hello' (bemærk citaterne). Derfor, for at have % inde i anførselstegnene, skal du tilføje dem til det, der er bundet, i dette tilfælde $_GET['s'] .




  1. Sådan ændres kolonnedatatype i SQL-database uden at miste data

  2. Fejl 1022 - Kan ikke skrive; dublet nøgle i tabel

  3. Hvilket versionsdesignmønster vil du anbefale

  4. Hvordan gendanner man data fra en slettet Docker-container? Hvordan forbindes den til dataene igen?