Мне не удалось узнать, просматривая Google.Поэтому я решил спросить здесь.Поддерживается ли параметризованный запрос в Postgre с использованием PHP pdo?
Если нет.Как я могу достичь такой же безопасности?
Обратите внимание, что безопасность, таким образом, доказательство инъекции является абсолютной необходимостью.Использование другой базы данных не является опцией в качестве sidenote.
В ответе Фонини;
Параметризованные запросы, например, так:
$st = $db->prepare(
"insert into vendors set
first_name = :first_name,
last_name = :last_name"
);
$st->execute(array(
':first_name' => $vendor->first_name,
':last_name' => $vendor->last_name
));
без использования bindParam
Для меня это не вставка.
Мой код выглядит так:
$project = new Project();
$project->id = 'sequence string';
$project->projectName = 'A project name';
$project->saveProject();
и в модели проекта:
public function saveProject() {
$this->_db->query("INSERT INTO projects VALUES (:id,:projectName)", array(':id' => $this->_projectFields['id'], ':projectName' => $this->_projectFields['projectName']))->save();
}
метод запроса в моем классе db помещает запрос в приватное поле $ _query, а параметр aray - в приватное поле $ _parameters.Затем я вызываю метод save, который подготавливает оператор, передавая $ this -> _ query в качестве параметра для PDO :: prepare (), а затем вызываю PDO :: execute, передавая $ this -> _ параметры в качестве параметра.Не удается вставить