Идиорм ПДО подготовил заявление
Я хочу использовать следующий идиорм (orm): https://github.com/j4mie/idiorm.
Это показывает следующее:
Построен на вершине PDO.
Повсеместно используются подготовленные операторы для защиты от атак SQL-инъекций.
Теперь в https://github.com/j4mie/idiorm/blob/master/idiorm.php я не вижу использования подготовленного утверждения, поэтому мой вопрос:> Если я использую следующий код, использую ли я orm+pdo подготовил заявления о том, что я защищен от SQL-инъекций:
require_once 'idiorm.php';
ORM::configure(array(
'connection_string' => 'mysql:host=localhost;dbname=my_database',
'username' => 'database_user',
'password' => 'top_secret'));
ORM::configure('return_result_sets', true);
ORM::configure('driver_options', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
ORM::configure('error_mode', PDO::ERRMODE_EXCEPTION);
$people = ORM::for_table('person')
->where(array(
'name' => $_POST["name"],
'age' => $_POST["age"]
))
->find_one();
1 ответ
Решение
Да, Idiorm использует подготовленные операторы, и вы должны быть защищены от атак SQL-инъекций.
Вы можете проверить _execute
метод, который вызывается при выполнении запроса. Оно использует bindParam
способ прикрепить параметры.