⊗ppSpPDPP 60 of 83 menu

Poziciniai placeholder'iai PDO PHP

Išsiaiškinkime, kaip dirbti su poziciniais placeholder'iais. Tarkime, kad turime du kintamuosius, kuriuos norėtume įterpti į užklausą:

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

Tarkime, kad norime įterpti savo kintamuosius taip:

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

Tačiau taip daryti nėra saugu. Todėl vietoj tiesioginio kintamųjų įterpimo, pakeiskime juos poziciniais placeholder'iais, kurie yra klaustukai:

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

Dabar vykdykime komandą, kuri paruoš užklausą:

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

Dabar vykdykime užklausą, perduodant jai parametrais masyvą, kuriame yra mūsų kintamieji. Tuo pačiu kintamieji bus įterpti į užklausą tokia tvarka, kokia jie nurodyti masyve:

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

Po to galime gauti užklausos rezultatą:

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

Sukonkretinkime viską kartu ir gausime šį kodą:

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

Duoti kintamieji:

<?php $age = 30; $salary = 1000; ?>

Raskite visus vartotojus, kurių amžius arba atlyginimas yra lygūs nurodytoms kintamųjų reikšmėms.

Pabandykite atlikti SQL-injekciją į savo kodą. Įsitikinkite, kad ji nepavyks.

Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti