Някой може ли да ми оправи кода , когато въведеш невалидно ID да изкара резултат , че форума не съществува или когато въведа id=' или id=
Отново да изкара, че форума е съществува.
Също така ми вади резултат;
Когато линка е;
index.php?act=viewforum&id='
Отново да изкара, че форума е съществува.
Също така ми вади резултат;
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '">' WHERE username='test'' at line 1
Когато линка е;
index.php?act=viewforum&id='
Код:
<?php
echo '<div class="gzaglavie"> Форуми</div>
<div class="gkutiika"><br />';
$rank = $_SESSION['rank'];
$username = $_SESSION['username'];
$forum_id = trim(strip_tags(addslashes($_GET['id'])));
if (!$forum_id) {
echo "Форумът, който се опитвате да отворите не съществува!";
}
else {
if ($username AND $forum_id !=10 and $forum_id !=1) { // ако е логнат потребителя и форума е различен от новини и кошче може да пуска нови теми
$newtopic = "<span style='padding-left: 5px;'><a href='?act=newtopic&mode=newtopic&f=$forum_id'>
<img src='images/forum/newtopic.png' alt='Нова тема' />
</a></span><br />";
}
elseif ($forum_id == 1 and $username != NULL and $rank > 1) { // ако форума е Новини и ранга на потребителя е модератор или админ да добавя тема
$newtopic = "<span style='padding-left: 5px;'><a href='?act=newtopic&mode=newtopic&f=$forum_id'>
<img src='images/forum/newtopic.png' alt='Нова тема' />
</a></span><br />";
}
elseif ($username == NULL) { // ако не е логнат потребителя
$newtopic = "";
}
else {
$newtopic = "<span style='padding-left: 5px;'><img src='images/forum/locked.png' alt='Заключен' /></span><br />";
}
echo $newtopic;
$pp = 20;
$page = $_GET['page'];
if(!$_GET['page']){
$page="1";
}
$limit = ($pp*$page)-$pp;
$redove = mysql_query("SELECT * FROM forum_topics WHERE forum_id = '$forum_id' ORDER BY time DESC") or die (mysql_error());
$max = mysql_numrows($redove); //преброяваме редовете
$total=ceil($max/$pp); //пресмятаме броя на страниците
$query = mysql_query("SELECT * FROM forum_topics WHERE forum_id = '$forum_id' AND vajna = '0' ORDER BY time DESC LIMIT $limit,$pp") or die (mysql_error());
$num = mysql_numrows($query);
echo "<table style='width: 100%;'>
<tr>
<td class='forum-tr'>Тема:</td>
<td class='forum-tr' width='85' align='center'>Автор:</td>
<td class='forum-tr' width='85' align='center'>Отговори:</td>
<td class='forum-tr' width='95' align='center'>Последно от:</td>
</tr>";
$result1 = mysql_query("SELECT * FROM forum_topics WHERE forum_id = '$forum_id' AND vajna > '0' ORDER BY vajna DESC, time DESC")or die(mysql_error());
while ($row = mysql_fetch_array($result1)) {
$sql1 = "SELECT * FROM forum_posts WHERE topic='$row[topicid]'";
$res1 = mysql_query($sql1);
$otgovori = mysql_num_rows($res1);
$otgovori = $otgovori - 1;
$sql2 = mysql_query("SELECT * FROM forum_posts WHERE topic='$row[topicid]' ORDER BY time DESC")or die(mysql_error());
$row1 = mysql_fetch_array($sql2);
$last = $row1['author'];
$ime = $row['name'];
$sql3 = mysql_query("SELECT * FROM `users` WHERE username = '$last'")or die(mysql_error());
$row2 = mysql_fetch_array($sql3);
$id_last = $row2['id'];
$sql34 = mysql_query("SELECT * FROM `users` WHERE username = '$row[author]'")or die(mysql_error());
$row24 = mysql_fetch_array($sql34);
$author_id = $row24['id'];
if (strlen($ime) > 35) {
$ime = substr($ime, 0,35)."...";
}
echo "<tr><td class='forum-td'>";
if ($row[vajna] == 1) {
echo "<a href='?act=viewtopic&id=$row[topicid]'><img src='images/star.png' alt='Важна тема' /> Важна тема: $ime</a>";
}
elseif ($row[vajna] == 2) {
echo "<a href='?act=viewtopic&id=$row[topicid]'><img src='images/lock.png' alt='Заключена тема' /> Заключена: $ime</a>";
}
echo "</td>
<td class='forum-td' align='center'><a href='index.php?act=viewprofile&id=$author_id'>$row[author]</a></td>
<td class='forum-td' align='center'>$otgovori</td>
<td class='forum-td' align='center'><a href='index.php?act=viewprofile&id=$id_last'>$last</a></td>
</tr>";
}
while ($row = mysql_fetch_array($result)) {
$res1 = mysql_query("SELECT * FROM forum_posts WHERE topic = '$row[topicid]'")or die(mysql_error());
$otgovori = mysql_num_rows($res1);
$otgovori = $otgovori - 1;
$sql2 = mysql_query("SELECT * FROM forum_posts WHERE topic = '$row[topicid]' ORDER BY time DESC")or die(mysql_error());
$row1 = mysql_fetch_array($sql2);
$last = $row1['author'];
$ime = $row['name'];
$sql3 = mysql_query("SELECT * FROM `users` WHERE username = '$last'")or die(mysql_error());
$row2 = mysql_fetch_array($sql3);
$id_last = $row2['id'];
$sql34 = mysql_query("SELECT * FROM `users` WHERE username = '$row[author]'")or die(mysql_error());
$row24 = mysql_fetch_array($sql34);
$author_id = $row24['id'];
if (strlen($ime) > 35) {
$ime = substr($ime, 0,35)."...";
}
echo "<tr><td class='forum-td'><a href='?act=viewtopic&id=$row[topicid]'>$ime</a></td>
<td class='forum-td' align='center'><a href='index.php?act=viewprofile&id=$author_id'>$row[author]</a></td>
<td class='forum-td' align='center'>$otgovori</td>
<td class='forum-td' align='center'><a href='index.php?act=viewprofile&id=$id_last'>$last</a></td>
</tr>";
}
echo "</table>";
echo "<div align='center'>";
//от тук започва кода за показването на страниците
if ($page > 1) {
$prev = ($page - 1);
echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=$prev\"><font face=\"Trebuchet MS\">Предишна страница</font></a> ";
}
else echo "<font face=\"Trebuchet MS\">Предишна страница</font> ";
if (!$page or ($page > $total)) {
$page="1";
}
if ($total < 10) {
for($i=1 ; $i<=$total ; $i++) {
if ( ($page)==$i ) {
echo "<b>$i</b> ";
}
else {
echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=".$i."\">".$i."</a> ";
}}}
else {
for($i=1 ; $i<=3 ; $i++) {
if ( ($page)==$i ) {
echo "<b>$i</b> ";
}
else {
echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=".$i."\">".$i."</a> ";
}}
if ($page <= 3) {
if ($page == 3) echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=4\">4</a> ";
echo "... ";
for ($i=$total-2; $i<=$total; $i++)
echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=".$i."\">".$i."</a> ";
}
if ($page == 5) $parva.= "<a href=\"index.php?act=viewforum&id=$forum_id&page=4\">4</a> ";
if ( ($page == 4) or ($page == 5) ) {
for ($i=$page; $i<=$page+1; $i++) {
if ($page == $i) echo "<b>$i</b> ";
else echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=".$i."\">".$i."</a> ";
}
echo "... ";
for ($i=$total-2; $i<=$total; $i++)
echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=".$i."\">".$i."</a> ";
}
if ( ($page > 5) and ($page < ($total - 4)) ) {
echo "... ";
for ($i=$page-1; $i<=$page+1; $i++) {
if ($page == $i) echo "<b>$i</b> ";
else echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=".$i."\">".$i."</a> ";
}
echo "... ";
for ($i=$total-2; $i<=$total; $i++)
echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=".$i."\">".$i."</a> ";
}
if ( $page > ($total - 5) ) {
echo "... ";
for ($i=$total-5; $i<=$total; $i++) {
if ($page == $i) echo "<b>$i</b> ";
else echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=".$i."\">".$i."</a> ";
}}}
if ($page < $total) {
$next = ($page + 1);
echo "<a href=\"index.php?act=viewforum&id=$forum_id&page=$next\"><font face=\"Trebuchet MS\">Следваща страница</font></a> ";
}
else echo "<font face=\"Trebuchet MS\">Следваща страница</font></div>";
}
echo '</div></div>';
?>