Файл: core/dbsimple/example.php
Строк: 1
<?php
Использую DBSimple
Пытаюсь добавить в базу занные из формы таким образом
Код PHP1 $DB->query('INSERT INTO users VALUES ("",?a)',$_POST)
Однако в таблицу забиваются нули вместо значенией, изменяется лишь автоинкриментное поле id.
Предварительная проверка $_POST есть.
02.06.2010, 10:22 #2
ostgals
Модератор
Регистрация: 23.01.2009
Адрес: Латвия, Рига
Сообщений: 1,295
Рейтинг сообщений: 513
Репутация: 718 Re: Как подружить $_POST и плейсхолдер ?a в DBSimple?
$_POST - это не простой, а ассоциативный массив (хэш, в котором каждому элементу присвоен ключ). Следовательно, он не подходит для использования SQL-выражений INSERT с плейсхолдером ?a
Лучше используйте идентификаторный плейсхолдер (?#) и списковый (?a) одновременно:
Код PHP1 $DB->query('INSERT INTO users (?#) VALUES (?a)', array_keys($_POST), array_values($_POST));
?>