Dalam PHP, anda boleh menggunakan kaedah penyediaan untuk melaksanakan pertanyaan berparameter PDO Kaedah ini akan mengembalikan objek PDOStatement, menggunakan sintaks seperti "prepare('SELECT login_oid FROM log in WHERE user_id=...".
Persekitaran pengendalian artikel ini: sistem Windows 7, PHP7.1, komputer Dell G3
Cara melaksanakan php pdo pertanyaan berparameter?
Pertanyaan berparameter PDO prepare() php menghalang suntikan SQL
Pertanyaan berparameter dalam PDO terutamanya menggunakan kaedah prepare(), dan kemudian kaedah ini akan mengembalikan objek PDOStatement, yang merupakan pernyataan SQL (tidak tahu bagaimana untuk menterjemah), pada masa ini pernyataan SQL hanya disusun, tetapi tidak dilaksanakan Selepas memanggil kaedah dalam PDOStatement, pernyataan SQL akan dilaksanakan, seperti dalam contoh berikut:
$sm = $db->prepare('SELECT login_oid FROM logined WHERE user_id=:user_id;'); $sm->bindValue(':user_id', $user_id, PDO::PARAM_INT); $sm -> execute();
Sebelum execute() dilaksanakan, anda boleh memanggil Kaedah bindValue() atau bindParam() menggantikan parameter yang anda nyatakan dalam pernyataan SQL yang disediakan sebelum ini Terdapat dua cara untuk menentukan parameter dalam pernyataan SQL: ' :name' dan '?'. Yang pertama digunakan dalam kod di atas Kaedah yang terakhir ialah:
$sm = $db->prepare('SELECT * FROM fruit WHERE calories < ?;'); $sm->bindValue(1, $calories, PDO::PARAM_INT); $sm->execute();
bindValue() yang pertama menentukan parameter mana dalam pernyataan SQL untuk diganti, yang kedua menentukan nilai yang diganti, dan yang ketiga menentukan parameter mana dalam pernyataan SQL yang akan digantikan. Jenis nilai yang ditentukan, jenis surat-menyurat adalah seperti berikut:
PDO::PARAM_BOOL
PDO::PARAM_NULL
PDO::PARAM_INT
PDO::PARAM_STR
PDO::PARAM_LOB
PDO::PARAM_STMT
PDO::PARAM_INPUT_OUTPUT
$sm = $db->prepare('SELECT * FROM fruit WHERE calories < ?;'); $sm->execute(array($calories));
$sm = $db->prepare('SELECT * FROM fruit WHERE calories < ?, id < ?;'); $sm->execute(array($calories, $user_id));
Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pertanyaan berparameter php pdo. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!