Ratibor |
|
---|---|
Поправочка, вываливаетя когда ищешь либо в форумах по заголовкам, либо в форумах по содержимому.
Если и по тому и другому вместе, то нормально. По страницам при любых условиях нормально, вернее если для форума конечно обе галочки стоят. И то это глюк только в общем поиске. Если выбрать поиск по форумам, то там тоже все нормально. В общем надо искать в search.php после 467 строки. Вроде нашел. Скорей всего виноваты две строки: AND p.fp_topicid=t.ft_id $frm_reply GROUP BY t.ft_id ORDER BY $orderby Так как в общем поиске нет галочки "Только в темах с ответами" А также "Сортировать результат поиска по" и "Искать результат с" Это есть только в поиске по форуму. Вот тут (начиная с 700 строки):
if ($sea_frmtitle=='1' && $sea_frmtext!='1') {
$sql = sed_sql_query("SELECT p.fp_id, t.ft_firstposterid, t.ft_firstpostername, t.ft_title, t.ft_id, s.fs_id, s.fs_title, s.fs_category
FROM $db_forum_posts p, $db_forum_topics t, $db_forum_sections s
WHERE 1 AND ($sqlsearchx2)
AND p.fp_topicid=t.ft_id $frm_reply
AND p.fp_sectionid=s.fs_id $sqlsections $sqlsections2
GROUP BY t.ft_id ORDER BY $orderby
LIMIT $cfg_maxitems");
$items = mysql_num_rows($sql);
}
elseif ($sea_frmtext=='1' && $sea_frmtitle!='1') {
$sql = sed_sql_query("SELECT p.fp_id, t.ft_firstposterid, t.ft_firstpostername, t.ft_title, t.ft_id, s.fs_id, s.fs_title, s.fs_category
FROM $db_forum_posts p, $db_forum_topics t, $db_forum_sections s
WHERE 1 AND ($sqlsearchx1)
AND p.fp_topicid=t.ft_id $frm_reply
AND p.fp_sectionid=s.fs_id $sqlsections $sqlsections2
GROUP BY t.ft_id ORDER BY $orderby
LIMIT $cfg_maxitems");
$items = mysql_num_rows($sql);
}
elseif ($sea_frmtext=='1' && $sea_frmtitle=='1') {
$sql = sed_sql_query("SELECT p.fp_id, t.ft_firstposterid, t.ft_firstpostername, t.ft_title, t.ft_id, s.fs_id, s.fs_title, s.fs_category
FROM $db_forum_posts p, $db_forum_topics t, $db_forum_sections s
WHERE 1 AND ( ($sqlsearchx1) OR ($sqlsearchx2) )
AND p.fp_topicid=t.ft_id
AND p.fp_sectionid=s.fs_id $sqlsections
GROUP BY t.ft_id ORDER BY fp_id DESC
LIMIT $cfg_maxitems");
$items = mysql_num_rows($sql);
}
надо поправить так:
if ($sea_frmtitle=='1' && $sea_frmtext!='1') {
$sql = sed_sql_query("SELECT p.fp_id, t.ft_firstposterid, t.ft_firstpostername, t.ft_title, t.ft_id, s.fs_id, s.fs_title, s.fs_category
FROM $db_forum_posts p, $db_forum_topics t, $db_forum_sections s
WHERE 1 AND ($sqlsearchx2)
AND p.fp_topicid=t.ft_id
AND p.fp_sectionid=s.fs_id $sqlsections $sqlsections2
GROUP BY t.ft_id ORDER BY fp_id DESC
LIMIT $cfg_maxitems");
$items = mysql_num_rows($sql);
}
elseif ($sea_frmtext=='1' && $sea_frmtitle!='1') {
$sql = sed_sql_query("SELECT p.fp_id, t.ft_firstposterid, t.ft_firstpostername, t.ft_title, t.ft_id, s.fs_id, s.fs_title, s.fs_category
FROM $db_forum_posts p, $db_forum_topics t, $db_forum_sections s
WHERE 1 AND ($sqlsearchx1)
AND p.fp_topicid=t.ft_id
AND p.fp_sectionid=s.fs_id $sqlsections $sqlsections2
GROUP BY t.ft_id ORDER BY fp_id DESC
LIMIT $cfg_maxitems");
$items = mysql_num_rows($sql);
}
elseif ($sea_frmtext=='1' && $sea_frmtitle=='1') {
$sql = sed_sql_query("SELECT p.fp_id, t.ft_firstposterid, t.ft_firstpostername, t.ft_title, t.ft_id, s.fs_id, s.fs_title, s.fs_category
FROM $db_forum_posts p, $db_forum_topics t, $db_forum_sections s
WHERE 1 AND ( ($sqlsearchx1) OR ($sqlsearchx2) )
AND p.fp_topicid=t.ft_id
AND p.fp_sectionid=s.fs_id $sqlsections $sqlsections2
GROUP BY t.ft_id ORDER BY fp_id DESC
LIMIT $cfg_maxitems");
$items = mysql_num_rows($sql);
}
Проверьте, вроде должно так быть. В транке поправил. Не задавай глупых вопросов, не услышишь вранья.
|
|
Bu gönderi Ratibor tarafından düzenlendi (2009-03-04 01:43, 16 yıllar önce) |