Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Запрос правильный но не работает (http://forum.oszone.net/showthread.php?t=187635)

venuko 06-10-2010 23:01 1513135

Запрос правильный но не работает
 
PHP код:

$size "2|3";            
$where2 $size;
$where2 str_ireplace("|"" OR id="$where2);

$result33 $db->sql_query("SELECT * FROM ".$prefix."_catalog_size WHERE id='".$where2."' ");

echo 
"
<p>Доступные размеры:
<select name=\"size\">"
;
while (
$mypages33 $db->sql_fetchrow($result33)) {
$id33 intval($mypages33['id']);
$title33 $mypages33['title'];
echo 
"<option value=\"".$id33."\">".$title33."</option>";
}
echo 
"
</select>
</p>"


Сломал уже голову, запрос верный, но выводит только значение равное id=2 а должно выводить два значения равное 2 и 3. Подставляешь в запрос в ручную WHERE id=2 OR id=3 все пашет как надо.

Подскажите в чем могут быть грабли?

Coutty 07-10-2010 03:35 1513244

Запрос неправильный, вот и не работает.
По вашему коду формируется такая строка:
PHP код:

...WHERE id='2 OR id=3' 

а должна быть такая:
PHP код:

...WHERE id='2' OR id='3' 

или такая:
PHP код:

...WHERE id=OR id=

В общем, кавычки стоят не так.

В таких случая полезно запрос формировать в отдельной переменной, а не непосредственно при подстановке в параметр метода. Тогда можно выводить отладочное значение.

venuko 07-10-2010 14:25 1513551

Спасибо, помогло. Просто моя невнимательность ... :)


Время: 13:53.

Время: 13:53.
© OSzone.net 2001-