Poimenovani nadomestni znaki v PDO v PHP

Za udobje lahko uporabite poimenovane nadomestne znake, kjer vrstni red spremenljivk v polju ni pomemben. Poglejmo, kako z njimi delati.

Recimo, da imamo spet naslednje spremenljivke:

php<?php
  $min = 1;
  $max = 5;
?>

Naredimo SQL poizvedbo z uporabo poimenovanih nadomestnih znakov. Njihova sintaksa je: dvopičje, nato pa ime nadomestnega znaka. Uporabimo jih v poizvedbi:

php<?php
  $sql = 'SELECT * FROM users WHERE id>:min and id<:max';
?>

Pripravimo poizvedbo:

php<?php
  $res = $pdo->prepare($sql);
?>

Izvedemo poizvedbo in ji podamo parametre kot asociativno polje, kjer so ključi imena nadomestnih znakov v SQL poizvedbi, vrednosti pa ustrezne spremenljivke:

php<?php
  $res->execute([
    'min' => $min,
    'max' => $max
  ]);
?>

Rezultat lahko pregledamo:

php<?php
  while ($row = $res->fetch()) {
    var_dump($row);
  }
?>

Vse skupaj sestavimo in dobimo naslednjo kodo:

php<?php
  $min = 1;
  $max = 5;
  
  $sql = 'SELECT * FROM users WHERE id>:min and id<:max';
  $res = $pdo->prepare($sql);
  
  $res->execute([
    'min' => $min,
    'max' => $max
  ]);
  
  while ($row = $res->fetch()) {
    var_dump($row);
  }
?>
Задание 1

Podana je spremenljivka:

php<?php
  $age = 30;
?>

Poiščite vse uporabnike, katerih starost je enaka vrednosti, določeni v spremenljivki.

Задание 2

Podane so spremenljivke:

php<?php
  $age1 = 20;
  $age2 = 30;
?>

Poiščite vse uporabnike, katerih starost je v območju, določenem z vrednostmi spremenljivk.

Задание 3

Podane so spremenljivke:

php<?php
  $age1 = 20;
  $age2 = 30;
  
  $salary1 = 1000;
  $salary2 = 2000;
?>

Poiščite vse uporabnike, katerih starost IN plača sta v območju, določenem z vrednostmi spremenljivk.