Witam, tworzę skrypt banowania czasowego pod moją grę via www, lecz niestety w pewnym miejscu zaciąłem się i nie wiem co dalej... A otóż to ten skrypt ban_time (kod zaczerpnięty z jednej z wtyczek popularnego CMS'a PHP-Fusion):
<?php
include ("strony/admin/Polish.php");
if (!isset($_GET['kas'])) { $_GET['kas'] = ""; } switch($_GET['kas']){
case 'ban':
$krw="";
$ban_time = isset($_POST['ban_time']) && is_numeric($_POST['ban_time']) ?
$_POST['ban_time'] : 0; $ban_trukme = isset($_POST['ban_trukme']) ?
$_POST['ban_trukme'] : ''; $ban_priezastis = isset($_POST['ban_priezastis']) ?
trim(stripinput
($_POST['ban_priezastis'])) : ''; if ($ban_time < 5) {
$krw = "1";
$err = $locale['bs19'];}
if (strlen($ban_priezastis) < 5
) { $krw = "1";
$err = $locale['bs20'];}
$krw= "1";
$err = $locale['bs21'];}
if($krw=="1"){
}else{
if($ban_trukme==="sek") { $ban_trukme = $ban_time; }
if($ban_trukme==="min") { $ban_trukme = $ban_time*60; }
if($ban_trukme==="val") { $ban_trukme = $ban_time*3600; }
if($ban_trukme==="die") { $ban_trukme = $ban_time*86400; }
if($ban_trukme==="sav") { $ban_trukme = $ban_time*604800; }
if($ban_trukme==="men") { $ban_trukme = $ban_time*2592000; }
if($ban_trukme==="met") { $ban_trukme = $ban_time*31536000; }
if ($udata['rola'] < 1) {
$result=mysql_query("INSERT INTO tribal_bany (ban_id, ban_time, ban_priezastis, ban_kada) VALUES ('".$_POST['gracz']."', '".(time()+$ban_trukme)."', '$ban_priezastis','".time()."');"); $result=mysql_query("UPDATE tribal_gracze SET zbanowany='1' WHERE gracz='".$_POST['gracz']."'"); if ($result) redirect("?akcja=ban_time&kas=ban");
}
}
}
if (!isset($_POST['search']) || !isset($_POST['searchko'])) { echo "<form name='searchff' method='post' action='?akcja=ban_time&kas=ban'>"; echo "<table align='center'><tr> <td>".$locale['bs26'].": <input type='text' name='searchko' class='textbox' style='width:200px'></td>
</tr><tr>
<td>".$locale['bs27']."<br><label><input type='radio' name='tipas' value='login' checked='checked' />".$locale['bs24']."</label></td>
</tr><tr>
<td><label><input type='radio' name='tipas' value='gracz' />".$locale['bs25']." </label></td>
</tr><tr>
<td align='center'><input type='submit' name='search' value='".$locale['bs26']."'></td>
</form></table>\n";
} elseif (isset($_POST['search']) && isset($_POST['searchko'])) { $ieskom = ""; if ($_POST['tipas'] == "gracz" && is_numeric($_POST['searchko'])) { $ieskom .= "gracz='".$_POST['searchko']."' ";
} elseif ($_POST['tipas'] == "login" && preg_match("/^[-0-9A-Z_@\s]+$/i", $_POST['searchko'])) { $ieskom .= "login LIKE '%".$_POST['searchko']."%' "; }
if ($ieskom) {
$result = mysql_query("SELECT gracz, login FROM tribal_gracze WHERE ".$ieskom." ORDER BY login"); }
echo "<form method='post' action='?akcja=ban_time&kas=ban&gracz'>"; $i = 0; $v = "";
while ($data = array($result)) { $i++; $v .= "<label><input type='radio' name='gracz' value='".$data['gracz']."'> ".$data['login']."</label>";
}
if ($i > 0) {
echo "<table align=center><tr> <td>".$locale['bs28']."</td>
<td><b>$v</b></td>
</tr><tr>
<td>".$locale['bs04']."</td>
<td><input name='ban_time' style='width:40px;' class='textbox'>
<select name='ban_trukme' class='textbox'>
<option value='sek'>".$locale['bs05']."</option>
<option value='min'>".$locale['bs06']."</option>
<option value='val'>".$locale['bs07']."</option>
<option value='die'>".$locale['bs08']."</option>
<option value='sav'>".$locale['bs09']."</option>
<option value='men'>".$locale['bs10']."</option>
<option value='met'>".$locale['bs11']."</option>
</select></td></tr><tr>
<td>".$locale['bs12']."</td>
<td><textarea name='ban_priezastis' style='width:200px;height:40px;' class='textbox'></textarea></td>
</tr><tr>
<td><input type='submit' name='baninti' value='".$locale['bs13']."'></td>
</tr></table>
</form>\n";
} else {
echo $locale['bs23']."<br><br>\n"; echo "<a href='?akcja=ban_time&kas=ban'>".$locale['bs22']."</a>\n";} } else {
echo $locale['bs23']."<br><br>\n"; echo "<a href='?akcja=ban_time&kas=ban'>".$locale['bs22']."</a>";} }
break;
case 'unban':
$result=mysql_query("UPDATE tribal_gracze SET zbanowany='0' WHERE gracz='".$_GET['gracz']."'"); $result=mysql_query("DELETE FROM tribal_bany WHERE ban_id='".$_GET['gracz']."'"); if ($result) redirect("ban_time");
}
break;
default:
include ("strony/admin/Polish2-user.php");
echo "<a href=?akcja=ban_time&kas=ban>".$locale['bs18']."</a><br><br>"; echo "<b>".$locale['bs14']."</b><br>"; $bl=row("SELECT * FROM tribal_bany");
echo "<a href=?akcja=profil&gracz=".$nx['ban_id'].">".$nm['login']."</a> (".$locale['bs15']." ".showdate
("forumdate",$nx['ban_kada']).") ".$locale['bs16']." <b>".showdate
("forumdate",$nx['ban_time'])."</b> ".$locale['bs12']." <u><b>";
if($nx['ban_priezastis']!=''){ echo $nx['ban_priezastis']."</b></u>"; } echo " <a href='?akcja=ban_time&kas=unban&gracz=".$nx['ban_id']."' onclick='return unbann();'> [".$locale['408']."]</a><br>"; }
echo "<script type='text/javascript'>"."\n"." function unbann(login) {\n";
echo "return confirm('".$locale['408']."');\n}\n</script>\n"; }
?>
I problem tkwi w tym, że gdy wchodzę w wyszukiwanie graczy i wpiszę POPRAWNIE któregoś z nich to za każdym razem wyskakuje mi wiadomość, że nic nie znaleziono... Jeśli ktoś może coś poradzić to bardzo proszę (IMG:
style_emoticons/default/winksmiley.jpg) Jeszcze dodam strukturę tej tabeli:
CREATE TABLE `tribal_bany` (
`ban_id` VARCHAR( 64 ) NOT NULL,
`ban_time` int(10) UNSIGNED NOT NULL,
`ban_priezastis` text NOT NULL,
`ban_kada` int(10) UNSIGNED NOT NULL,
PRIMARY KEY ( `ban_id` )
) ENGINE = MYISAM;
gracz = id_gracz