Как от такого спастись может есть какойнибуть антифлуд

Буду очень блогодарен нетолько я такая фигня уже на 4 трекерах была

Модератор: doliar
<?php
if (!defined('BLOCK_FILE')) {
Header("Location: ../index.php");
exit;
}
global $CURUSER, $tracker_lang, $ss_uri;
// Get current poll
$res = sql_query("SELECT * FROM polls ORDER BY added DESC LIMIT 1") or sqlerr(__FILE__, __LINE__);
if($pollok=(mysql_num_rows($res))) {
$arr = mysql_fetch_assoc($res);
$pollid = $arr["id"];
$userid = $CURUSER["id"];
$question = $arr["question"];
$o = array($arr["option0"], $arr["option1"], $arr["option2"], $arr["option3"], $arr["option4"],
$arr["option5"], $arr["option6"], $arr["option7"], $arr["option8"], $arr["option9"],
$arr["option10"], $arr["option11"], $arr["option12"], $arr["option13"], $arr["option14"],
$arr["option15"], $arr["option16"], $arr["option17"], $arr["option18"], $arr["option19"]);
// Check if user has already voted
$res = sql_query("SELECT * FROM pollanswers WHERE pollid=$pollid AND userid=$userid") or sqlerr(__FILE__, __LINE__);
$arr2 = mysql_fetch_assoc($res);
}
$blocktitle = $tracker_lang['poll'].(get_user_class() >= UC_MODERATOR ? "<font class=\"small\"> - [<a class=\"altlink\" href=\"makepoll.php?returnto=main\"><b>".$tracker_lang['create']."</b></a>]".($pollok ? " - [<a class=\"altlink\" href=\"makepoll.php?action=edit&pollid=$arr[id]&returnto=main\"><b>Редактировать</b></a>] - [<a class=\"altlink\" href=\"polls.php?action=delete&pollid=$arr[id]&returnto=main\"><b>Удалить</b></a>]" : "")."</font>" : "");
if($pollok) {
$content .= ("<p align=\"center\"><b>$question</b></p>\n");
$voted = $arr2;
if ($voted) {
// display results
if ($arr["selection"])
$uservote = $arr["selection"];
else
$uservote = -1;
// we reserve 255 for blank vote.
$res = sql_query("SELECT selection FROM pollanswers WHERE pollid=$pollid AND selection < 20") or sqlerr(__FILE__, __LINE__);
$tvotes = mysql_num_rows($res);
$vs = array(); // array of
$os = array();
// Count votes
while ($arr2 = mysql_fetch_row($res))
$vs[$arr2[0]] += 1;
reset($o);
for ($i = 0; $i < count($o); ++$i)
if ($o[$i])
$os[$i] = array($vs[$i], $o[$i]);
function srt($a,$b) {
if ($a[0] > $b[0]) return -1;
if ($a[0] < $b[0]) return 1;
return 0;
}
// now os is an array like this: array(array(123, "Option 1"), array(45, "Option 2"))
if ($arr["sort"] == "yes")
usort($os, srt);
$content .= ("<table class=\"main\" align=\"center\" width=\"250\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n");
$i = 0;
while ($a = $os[$i]) {
if ($i == $uservote)
$a[1] .= " *";
if ($tvotes == 0)
$p = 0;
else
$p = round($a[0] / $tvotes * 100);
if ($i % 2)
$c = "";
else
$c = " bgcolor=\"#eeeeee\"";
$content .= ("<tr><td width=\"1%\" class=\"embedded\"$c><nobr>" . $a[1] . " </nobr></td><td width=\"99%\" class=\"embedded\"$c><nobr>" .
"<img src=\"./themes/$ss_uri/images/bar_left.gif\"><img src=\"./themes/$ss_uri/images/bar.gif\" height=\"12\" width=\"" . ($p * 3) .
"\"><img src=\"./themes/$ss_uri/images/bar_right.gif\"> $p%</nobr></td></tr>\n");
++$i;
}
$content .= ("</table>\n");
$tvotes = number_format($tvotes);
$content .= ("<p align=\"center\">Голосов: $tvotes</p>\n");
} else {
$content .= ("<form method=\"post\" action=\"index.php\">\n");
$i = 0;
while ($a = $o[$i]) {
$content .= ("<input type=\"radio\" name=\"choice\" value=\"$i\">$a<br />\n");
++$i;
}
$content .= ("<br />");
$content .= ("<input type=\"radio\" name=\"choice\" value=\"255\">".$tracker_lang['blank_vote']."<br />\n");
$content .= ("<p align=\"center\"><input type=\"submit\" value=\"".$tracker_lang['vote']."!\" class=\"btn\"></p>");
$content .= ("</form>");
}
if ($voted)
$content .= ("<div align=\"center\"><a href=\"polls.php\">".$tracker_lang['old_polls']."</a></div>\n");
} else {
$content .= "<table class=\"main\" align=\"center\" border=\"1\" cellspacing=\"0\" cellpadding=\"10\"><tr><td class=\"text\">";
$content .= "<div align=\"center\"><h3>".$tracker_lang['no_polls']."</h3></div>\n";
$content .= "</td></tr></table>";
}
?>
ALEKS200994 писал(а): SuffeRiNG если у вас безлимитка то напишите . если нет ,то пойдёт "Антиспам запрет написания комментариев"?.Если да то редактирую потому что там есть ошибочка в запятых.Но лучше если бы у вас была безлимитка.
ALTER TABLE `users` ADD `antispam` ENUM( 'yes', 'no' ) DEFAULT 'yes' NOT NULL;
print("<tr><td class=rowhead>Отключить</td><td colspan=2 align=left><input name=enabled value='yes' type=radio" . ($enabled ? " checked" : "") . ">НЕТ <input name=enabled value='no' type=radio" . (!$enabled ? " checked" : "") . ">ДА </td></tr>\n");
print("<tr><td class=rowhead>Использовать написание комментариев</td><td colspan=2 align=left><input type=radio name= value=yes" .($user["antispam"]=="yes" ? " checked" : "") . ">Да <input type=radio name=antispam value=no" .($user["antispam"]=="no" ? " checked" : "") . ">Нет</td></tr>\n");
l stdhead("Добление комментария к \"" . $arr["name"] . "\"");
if ($CURUSER["antispam"] == 'no')
{
stdmsg("Извините", "Вам было запрещено писать комментарии .");
stdfoot();
exit;
}
$warned = $_POST["warned"];
$antispam = $_POST["antispam"];
$res = mysql_query("SELECT warned, enabled, username,
antispam,
$curenabled = $arr["enabled"];
$curantispam = $arr["antispam"];
$added = sqlesc(get_date_time());
mysql_query("INSERT INTO messages (sender, receiver, msg, added) VALUES (0, $userid, $msg, $added)") or sqlerr(__FILE__, __LINE__);
}
}
if ($antispam != $curantispam)
{
if ($antispam == 'yes')
{
$modcomment = gmdate("Y-m-d") . " - Запрет писать комментарии был снят пользователем" . $CURUSER['username'] . ".\n" . $modcomment;
$msg = sqlesc("Вы были разбанены по статье запрет комментариев! пользователем " . $CURUSER['username'] . ". Вы снова можете писать комментарии.");
write_log("<font color=red>Пользователь <b>$username</b> был разбанен по статье запрет лс пользователем <b><a href=userdetails.php?id=" . $CURUSER[id] . ">$CURUSER[username]</a></b>.</font>");
$added = sqlesc(get_date_time());
mysql_query("INSERT INTO messages (sender, receiver, msg, added) VALUES (0, $userid, $msg, $added)") or sqlerr(__FILE__, __LINE__);
}
else
{
$modcomment = gmdate("Y-m-d") . " - Вы были забанены по статье запрет комментариев забанил пользователь" . $CURUSER['username'] . ".\n" . $modcomment;
$msg = sqlesc("Вы были забанены по статье запрет комментариев пользователем " . $CURUSER['username'] . ", теперь Вы не сможете писать комментарии .");
write_log("<font color=orange><b>Пользователь <u>$username</u> был забанен по статье запрет комментариев пользователем <a href=userdetails.php?id=" . $CURUSER[id] . ">$CURUSER[username]</a>.</font></b>");
$added = sqlesc(get_date_time()); mysql_query("INSERT INTO messages (sender, receiver, msg, added) VALUES (0, $userid, $msg, $added)") or sqlerr(__FILE__, __LINE__);
}
}
$updateset[] = "enabled = " . sqlesc($enabled);
$updateset[] = "antispam = " . sqlesc($antispam);
Ошибка
SQL-запрос:
ALTER TABLE `users` ADD `antispam` ENUM( 'yes', 'no' ) DEFAULT 'yes' NOT NULL
Ответ MySQL: Документация
#1060 - Duplicate column name 'antispam'
Вернуться в Установка веб-приложений
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2