Форум: "Прочее";
Текущий архив: 2009.02.15;
Скачать: [xml.tar.bz2];
ВнизПомогите исправить багу в скрипте поисковика Найти похожие ветки
← →
xayam © (2008-08-30 11:10) [0]http://xayam.900megs.com/
проблема такая. Короче если я ввожу в поле Пользователь значение "xayam" то все нормально - http://xayam.900megs.com/index.php?s=&pnumber=30&forum=&user=xayam . Заметьте что выводится две ветки из форума Базы. Так вот если добавить ограничение где искать "Базы", то отобразиться одна ветка - http://xayam.900megs.com/index.php?s=&pnumber=30&forum=%D0%91%D0%B0%D0%B7%D1%8B&user=xayam
В чем может быть проблема?
примерно такой код
if (isset($_GET["pnumber"]) and $_GET["pnumber"] != "") $pnumber = $_GET["pnumber"]; else $pnumber = 30;
if (isset($_GET["s"])) $s = $_GET["s"]; else $s = "";
if (isset($_GET["user"])) $user = $_GET["user"]; else $user = "";
if (isset($_GET["forum"])) $forum = $_GET["forum"]; else $forum = "";
if (isset($_GET["page"])) $page = $_GET["page"]; else $page = 1;
if (isset($_GET["order"])) $order = $_GET["order"]; else $order = "";
$start = ($page - 1) * $pnumber + 1;
if ($user == "") $myuser = 1; else $myuser = "LGN ="".$user.""";
if ($forum == "") $myforum = 1; else $myforum = "DSC = "".$forum.""";
if ($s == "") $against = 1; else $against = "match(TITLE) against("$s" IN BOOLEAN MODE)";
$where = "where ($myuser) and ($myforum) and ($against)";
$query = "select * from trd $where LIMIT $start, $pnumber";
$query2= "select COUNT(ID_TRD) from trd $where";
$tot = mysql_query($query2);
echo $query;
echo "<br />";
echo $query2;
if (!$tot) exit(mysql_error());
$total = mysql_result($tot, 0);
$number = (int)($total/$pnumber);
if ((float)($total/$pnumber) - $number != 0) $number++;
if ($total > 1)
{
echo "<div>Найдено: ".($total - 1);
if ($forum != "") echo " на форуме ".""$forum"";
echo "</div><div>Страницы: ";
//
for ($i = 1; $i <= $number; $i++)
{
if ( fmod($i, 10) == 0.0 ) echo "<br />";
if ($i != $number)
{
if ($page == $i) echo "[".(($i - 1)*$pnumber + 1)."-".$i*$pnumber."] ";
else echo "<a href="index.php?page=".$i."&s=".urlencode($s)."&pnumber=".$pnumber."&forum=".url encode($forum)."&user=".urlencode($user)."">[".(($i - 1)*$pnumber + 1)."-".$i*$pnumber."]</a> ";
} else
{
if ($page == $i) echo "[".(($i - 1)*$pnumber + 1)."-".($total - 1)."] ";
else echo "<a href="index.php?page=".$i."&s=".urlencode($s)."&pnumber=".$pnumber."&forum=".url encode($forum)."&user=".urlencode($user)."">[".(($i - 1)*$pnumber + 1)."-".($total - 1)."]</a> ";
}
}
?>
</div>
<hr />
<?php
// echo $count."<br/>";
$result = mysql_query($query);
//echo $query;
$i = $start;
echo "<table width="100%" border="0"><tr><th align="center" width="5%">Номер</th><th align="center" width="*">Вопрос</th><th align="center" width="5%">Ответов</th><th align="center" width="15%">Ник</th><th align="center" width="5%">Форум</th><th align="center" width="20%">Дата</th></tr>";
if (!$result) exit(mysql_error());
if (mysql_num_rows($result) > 0)
while ($row = mysql_fetch_assoc($result))
{
echo "<tr><td width="5%" align="center">".$i.".</td>".
"<td width="*"><a target="_blank" href="html/html".$row["FOLDER"]."/".substr($row["FILENAME"], 0, strlen($row["FILENAME"]) - 3)."html">".$row["TITLE"]."</a></td>".
"<td width="5%" align="center"><font size="-2">".$row["CNT"]."</font></td>".
"<td width="15%" align="center">".$row["LGN"]."</td>".
"<td width="5%" align="center">".$row["DSC"]."</td>".
"<td width="20%" align="center"><font class="date">".$row["DT"]."</font></td>".
"</tr>";
$i++;
}
echo "</table>";
?>
<hr />
<div>Страницы:
<?php
for ($i = 1; $i <= $number; $i++)
{
if ( fmod($i, 10) == 0.0 ) echo "<br />";
if ($i != $number)
{
if ($page == $i) echo "[".(($i - 1)*$pnumber + 1)."-".$i*$pnumber."] ";
else echo "<a href="index.php?page=".$i."&s=".urlencode($s)."&pnumber=".$pnumber."&forum=".url encode($forum)."&user=".urlencode($user)."">[".(($i - 1)*$pnumber + 1)."-".$i*$pnumber."]</a> ";
} else
{
if ($page == $i) echo "[".(($i - 1)*$pnumber + 1)."-".($total - 1)."] ";
else echo "<a href="index.php?page=".$i."&s=".urlencode($s)."&pnumber=".$pnumber."&forum=".url encode($forum)."&user=".urlencode($user)."">[".(($i - 1)*$pnumber + 1)."-".($total - 1)."]</a> ";
}
}
echo "</div>";
} else
if (isset($_GET["s"])) echo "<div align="center"><font color="red">Ничего не найдено!</font></div>";
?>
Страницы: 1 2 3 4 5 вся ветка
Форум: "Прочее";
Текущий архив: 2009.02.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c