|
|
|
|
IF ( isset ($category_1) ){
$where.="p.CID='1'";
}
IF ( isset ($category_2) ){
if ($where==true){
$where.=" OR ";
}
$where.="p.CID='2'";
}
IF ( isset ($category_3) ){
if ($where==true){
$where.=" OR ";
}
$where.="p.CID='3'";
}
IF ( isset ($category_4) ){
if ($where==true){
$where.=" OR ";
}
$where.="p.CID='4'";
}
If ($row['All']==true){
$where="p.CID='1' OR p.CID='2' OR p.CID='3' OR p.CID='4'";
}
$num=1;
$i=0;
$sql = $db->sql_query(" SELECT p.ID, p.CID, p.Title, p.Image, p.Info, p.Image2, p.Image3, p.Image4, p.Image5, p.Style, p.Chan, c.lid, c.title, c.style, c.clid
FROM ".$prefix."_db as p
LEFT JOIN ".$prefix."_db_url as c on (p.ID=c.clid)
where ($where) AND (p.Title like '%$SearchWord%' OR c.title like '%$SearchWord%')");
|
на локальной машине работает все нормально
переставил на хостиг
если поиск идет по одной двум категориям все нормально
если же выбрать все категории то страница грузится долго и выводит пустую страницу вообще без всего
в базе пока около 3000 записей в одной и другой
такое ощущения что скрипту не хватает времени
что можно зделать | |
|
|
|
|
|
|
|
для: gurza
(03.01.2009 в 02:44)
| | неужели нет вариантов | |
|
|
|
|
|
|
|
для: gurza
(03.01.2009 в 17:37)
| | Можно конечно попробовать увеличить время работы скрипта функцией set_time_limit(), но если скрипт работает больше 30 сек, которые отведены по умолчанию, это не есть хорошо. Наверное нужно попытаться изменить структуру запроса, и скорее всего всей бд... | |
|
|
|
|
|
|
|
для: Николай2357
(03.01.2009 в 17:48)
| | может попытатся делать полнотекстовой поиск он в этой ситуации поможет?
set_time_limit() пробывал уже выдал ошибку чето там с safe_mode | |
|
|
|
|
|
|
|
для: gurza
(03.01.2009 в 18:18)
| | Вам действительно не поможет данная функция, так как она увеличивает время работы PHP скрипта, а проблема в "тяжелом" запросе. Да и ни к чему тратить столько времени. 3000 записей не такая уж и страшная цифра. Не совсем понятен алгоритм запроса, боюсь чего нибудь напутать. Можно поподробнее? | |
|
|
|
|
|
|
|
для: Николай2357
(03.01.2009 в 18:39)
| | в таблице _db находятся названия двд ,сд дисков
в таблице _db_url находятся названия клипов, песен на этом двд или сд
4 категории дисков при поиске | |
|
|
|
|
|
|
|
для: gurza
(03.01.2009 в 18:48)
| | На мой взгляд, Вам не зачем делать такой сложный запрос, а нужно при записи присвоить необходимые категории и принадлежность. Тогда выборку делать гораздо проще. Сначала выбираете название, а потом всё остальное. Или наоборот. А вообще можно и не делить это всё по разным таблицам. | |
|
|
|
|
|
|
|
для: Николай2357
(03.01.2009 в 19:00)
| | спасибо буду пробывать | |
|
|
|