⊗ppSpPDVB 63 of 83 menu

Poziční vazba proměnných v PDO v PHP

Proměnné lze k dotazu vázat jednu po druhé. To se provádí pomocí metody bindValue. Poté je získaný dotaz proveden, ale v tomto případě se do execute nic nepředává.

Tato vazba umožňuje přesně určit typ proměnné, čímž se zruší automatické obalování uvozovkami pro číselné hodnoty. Podívejme se, jak se to dělá. Předpokládejme, že máme dvě proměnné, řetězcovou a číselnou:

<?php $name = 'name1'; $age = 25; ?>

Připravíme dotaz:

<?php $sql = 'SELECT * FROM users WHERE name=? or age=?'; $res = $pdo->prepare($sql); ?>

Nyní přivážeme proměnné k dotazu pomocí metody bindValue. V prvním parametru metody se určuje číslo pozice v dotazu, ve druhém parametru - název proměnné, a ve třetím se určuje typ proměnné (číselný nebo řetězcový):

<?php $res->bindValue(1, $name, PDO::PARAM_INT); $res->bindValue(2, $age, PDO::PARAM_STR); ?>

Provedeme dotaz:

<?php $res->execute(); ?>

Podívejme se na výsledek:

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

Jsou dány proměnné:

<?php $name1 = 'name1'; $name2 = 'name2'; ?>

Získejte uživatele, jejichž jméno se shoduje s hodnotou první nebo druhé proměnné.

Jsou dány proměnné:

<?php $age1 = 21; $age2 = 22; ?>

Získejte uživatele, jejichž věk se shoduje s hodnotou první nebo druhé proměnné.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout