|
|
|
|
|
для: volodumir
(07.04.2014 в 14:47)
| | Потому, что проще запись, а метод сам каждый элемент массива сопоставит с метками. В описании PDO обо всем этом ведь сказано, не так много как хотелось бы, но вполне достаточно для уяснения. | |
|
|
|
|
|
|
|
для: psychomc
(06.04.2014 в 00:49)
| | Спасибо, а почему лучше? | |
|
|
|
|
|
|
|
для: volodumir
(05.04.2014 в 21:21)
| | код полностью безопасен. вместо
$stmt->bindParam(':firstname', $firstname);
$stmt->bindParam(':lastname', $lastname);
$stmt->bindParam(':email', $email);
|
лучше отдайте массив методу execute | |
|
|
|
|
|
|
|
для: confirm
(24.03.2014 в 23:26)
| | Скажите, пожалуйста, на сколько данный код безопасен?
//Не именованные метки
try {
$stmt = $db->prepare("INSERT INTO test (label,color) VALUES (?,?)");
$stmt -> execute(array('perfect','green'));
}
catch(PDOException $e){
echo 'Error : '.$e->getMessage();
exit();
}
//stmt - это "дескриптор состояния"
//Именованные метки
$stmt = $db->prepare("INSERT INTO test (label,color) VALUES (:label,:color)");
$stmt -> execute(array('label'=>'perfect', 'color'=>'green'));
//Еще вариант
$stmt = $db->prepare("INSERT INTO users (firstname, lastname, email) VALUES (:firstname, :lastname, :email)");
$stmt->bindParam(':firstname', $firstname);
$stmt->bindParam(':lastname', $lastname);
$stmt->bindParam(':email', $email);
$firstname = "John";
$lastname = "Smith";
$email = "john@test.com";
$stmt->execute();
|
| |
|
|
|
|
|
|
|
для: psychomc
(24.03.2014 в 19:16)
| | Ну в общем да, будет смотреть, значит и в prepare() воткнется, где и разъясняется интересуемое ) | |
|
|
|
|
|
|
|
для: Саня
(24.03.2014 в 19:07)
| | так никто и не говорит, что не использовать. речь то шла конкрентно про параметры | |
|
|
|
|
|
|
|
для: psychomc
(24.03.2014 в 16:32)
| | Если не использовать эмулированные подготовленные запросы, то получится деградация производительности. | |
|
|
|
|
|
|
|
для: psychomc
(24.03.2014 в 16:32)
| | Надо бы сказать, что сперва подготавливается запрос, а уже потом.... | |
|
|
|
|
|
|
|
для: volodumir
(24.03.2014 в 15:33)
| | ВСЕ параметры, которые вы собираетесь использовать в запросах PDO, должны прогоняться через метод execute. забудьте о том строка это или число, просто возьмите за правило. и не имеет никакого значения откуда эти данные | |
|
|
|
|
|
|
|
для: psychomc
(24.03.2014 в 15:26)
| | Честно говоря сам не знаю, использовать is_numeric() безопасно непосредственно для $_POST? Перед самим добавлением цифр через PDO. | |
|
|
|
|