sql >> Databasteknik >  >> RDS >> Mysql

PDO Bind Params beroende på om de finns i frågan

Du kan använda en array med värdena och skicka den som en parameter till execute() metod.

Om typen casting av variablerna som bindParam() erbjudanden är inte så viktigt (du använder det inte ens...), vilket gör det mycket lättare att skapa frågor eftersom du kan fylla arrayen när du bygger frågesträngen.

För ditt exempel:

$query = "SELECT * from `usertable` where users_active=:users_active";
$params = array(':users_active' => $users_active);

if($mode=="archived") {
    $query .= " AND archived=:archived";
    $params[':archived'] = $archived;
}

$stmt = $dbpdo->prepare($query);

$stmt->execute($params);



  1. PHP, MySQL - kan du skilja mellan matchade rader och rader som påverkas?

  2. MySQL producent konsument med flera utvalda trådar

  3. Vad är det maximala antalet tabellanslutningar i MariaDB?

  4. Installera mysql-adapter 'gem install activerecord-mysql-adapter'