db_placeholders() - ничего не понимаю

Прислано: RxB

вт, 24/11/2009 - 19:08

Другие статьи по теме:

Ничего не пойму. Имеем код:

Массив $type передаётся в функцию в таком виде
$type = array('story', 'page');
...
$sql = "SELECT nid FROM {node} WHERE created >  %d AND created < %d AND type IN (".db_laceholders($type, 'text').")";
$result = db_query($sql, $from, $to, $type);
...

В результате генерируются левые заполнители, а именно вместо '%s', генерируются \'%s\', т.е. экраниронные.
ЧЯДН?

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано oblivion в вт, 24/11/2009 - 21:20.

magic_quotes?
и пересмотрите что идет после AND


Опубликовано RxB в вт, 24/11/2009 - 21:48.

Magic_quotes отключен.
То что после AND поправил.
Почему так получается, не понимаю


Опубликовано kosilko в вт, 24/11/2009 - 23:29.

В функцию db_query() после $sql должно передаваться либо набор строк и чисел , либо один массив с оными.


Опубликовано RxB в вт, 24/11/2009 - 23:43.

Хм, проверю, сколько раз передавал несколько параметров, было нормально всё


Ссылки партнёров