помогите разобраться с prepare

Johnstein
Дата: 15.01.2013 01:58:16
Этот запрос работает
$rs = $load->query("select city, region from cities where city like 'c%' order by city asc limit 0,10");

а вот этот не работает
$rs = $load->prepare("select city, region from cities where city like ? order by city asc limit 0,10");
$rs->bind_param("s", $term);
$term="'c%'"; // или $term="c%";
$rs->execute();

Подскажите, пожалуйста, в чем дело?
isamitakata
Дата: 15.01.2013 03:33:20
Johnstein, переменная $term не должна ли определяться до bind_param , а не после.
Johnstein
Дата: 15.01.2013 09:15:11
Насколько я знаю, это без разницы. Но проверил, все равно не работает.
tanglir
Дата: 15.01.2013 10:04:42
Johnstein
или $term="c%";
Это тоже не помогло?
Johnstein
Дата: 15.01.2013 10:30:55
tanglir
Johnstein
или $term="c%";
Это тоже не помогло?

Не помогло. Вроде правильно написано подготовленное выражение. Но не работает. Даже не могу понять, как ошибку найти.
tanglir
Дата: 15.01.2013 10:44:02
Johnstein
$rs = $load->prepare("select city, region from cities where city like ? order by city asc limit 0,10");
$rs->bind_param("s", $term);
Может, надо не "?", а "?s" ?
Johnstein
Дата: 15.01.2013 11:22:04
tanglir
Может, надо не "?", а "?s" ?

"s" ведь всего лишь сообщает, что параметр будет строковым
tanglir
Дата: 15.01.2013 11:25:18
Johnstein
tanglir
Может, надо не "?", а "?s" ?

"s" ведь всего лишь сообщает, что параметр будет строковым
Понимаете, я на глаз даже не определю, что у вас за система доступа к данным. Спрашивайте тогда уже на форуме, посвящённом этой системе. Может, там номер параметра обязательно надо указывать или ещё что, к мусклю это уже отношения практически не имеет.
Arhat109
Дата: 15.01.2013 13:14:29
Johnstein,

1. В запросе разве должен быть только вопросик? (позиционный параметр вместо именованного)...
2. Когда бинтуете значение, оно разве не должно быть УЖЕ определено? в смысле сначал $term = ...
3. Значение разве должно быть в собственных кавычках?

... я не помню как там в родном PDO, поскольку работаю в основном через Zend_Db. Но что-то мне подсказывает, что тут больше одной ошибки.
miksoft
Дата: 15.01.2013 18:46:19
Johnstein,

$load - что за объект?
язык, подозреваю, PHP?