Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Базы Данных > Поиск


Автор: Igor_CH 29.6.2006, 11:36
Делю запрос на поиск, но почему то не срабытывает условие WHERE. Почему так?
Код

$sql = "SELECT * FROM news WHERE Status='On' and SecId!='3' LIKE '%$key%' or Title LIKE '%$key%' or Body LIKE '%$key%' ORDER by nIdCode DESC LIMIT ".$p.",".$to_page; // Выбираем из таблицы указанное кол-во записей начиная со стартовой на текущей странице.
$result = mysql_query($sql,$con) or die (mysql_error()."<br>".$sql);
 

Автор: PARROT 29.6.2006, 12:26
Код

 LIKE '%".$key."%'


Добавлено @ 12:29 
Стоит написать в два запроса, выбрать записи со статусом, а потом искать. 

Автор: vasac 29.6.2006, 16:55
А LIKE к чему применяется? 

Автор: Igor_CH 29.6.2006, 16:57
подскажи пожалуйстак как это правильно осуществить
пробую вот так, не получается :

Код

$sql = "SELECT COUNT(*) FROM news WHERE  nStatus='On' and SectionId!='3' LIKE '%".$key."%'";
$result_1 = mysql_query($sql);
while ($row = @ mysql_fetch_array($result_1)) {

    $sql = "SELECT * FROM news WHERE nStatus='On' and SectionId !='3' LIKE '%$key%' or nTitle LIKE '%$key%' or nBody LIKE '%$key%' ORDER by nIdCode DESC LIMIT ".$p.",".$to_page; // Выбираем из таблицы указанное кол-во записей начиная со стартовой на текущей странице.
$result = mysql_query($sql,$con) or die (mysql_error()."<br>".$sql);
if ($result!=false) {
echo "";
}
}
 

Автор: -=Ustas=- 30.6.2006, 10:01
Код

$sql = "SELECT * FROM news WHERE Status='On' and SecId!='3' AND Title LIKE '%$key%' or Body LIKE '%$key%' ORDER by nIdCode DESC LIMIT ".$p.",".$to_page; // Выбираем из таблицы указанное кол-во записей начиная со стартовой на текущей странице.
$result = mysql_query($sql,$con) or die (mysql_error()."<br>".$sql);

Ты чё, ошибки не читаешь?!

Добавлено @ 10:04 
Цитата(Igor_CH @  29.6.2006,  16:57 Найти цитируемый пост)
and SectionId !='3' LIKE '%$key%' 

Ты тут делаешь ошибку, т.к. LIKE здесь применяется непонятно к какому полю. 
Двумя запросами это делать не обязательно, читай ман.
fileld LIKE 'expr' 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)