Вход Регистрация
Файл: 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));
?>
Онлайн: 0
Реклама