⊗ppSpPDPP 60 of 83 menu

PHPдеги PDOда позициялуу плейсхолдерлер

Позициялуу плейсхолдерлер менен кантип иштөө керектигин карап көрөлү. Бизде сурамга киргизгибиз келген эки өзгөрмө бар дейли:

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

Биз өзгөрмөлөрбүздү төмөнкүдөй киргизгибиз келет дейли:

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

Бирок, муну кылуу коопсуз эмес. Ошондуктан, өзгөрмөлөрдү түздөн-түз киргизгендин ордуна, аларды суроо белгилери менен көрсөтүлгөн позициялуу плейсхолдерлер менен алмаштыралы:

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

Эми сурамды даярдай турган буйрукту аткаралы:

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

Эми сурамды аткарып, ага өзгөрмөлөрүбүздү камтыган массивди параметр катары берели. Бул учурда өзгөрмөлөр массивде көрсөтүлгөн тартипте сурамга киргизилет:

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

Андан кийин сурамдын натыйжасын ала алабыз:

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

Баарын чогултуп, төмөнкү кодду алабыз:

<?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); } ?>

Өзгөрмөлөр берилген:

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

Жашы же эмгек акысы берилген өзгөрмөлөрдүн маанисине барабар болгон бардык колдонуучуларды табыңыз.

Кодуңузга SQL-инъекция жасап көрүңүз. Ал ишке ашпаганына ишенет.

Кыргызча
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Биз сайттин иштөөсү, аналитика жана персонализация үчүн cookie файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу