Probleme mit IP-Sperre beim Formular

He@dkiller

Grünschnabel
Hallo zusammen.

1. Ich habe die Suchfunktion schon benutzt

2. Ich bin wohl zu dämlich richtig php zu coden :(

Nun zu meiner Frage.... Ich habe folgenden Code:

Datei show.php
PHP:
... Codeteil der die Details der jew. Link-ID anzeigt (unwichtig) ....

<?php
   include("config.inc.php");

   $conn = mysql_connect($CFG[db_server], $CFG[db_user], $CFG[db_pass]);
   mysql_select_db($CFG[db_name], $conn);

// Hier wird überprüft, ob der Button "Kommentar abgeben" gedrückt wurde, und wenn ja, dann werden die Daten in die DB eingetragen

 if ($senden == "add"){

$link_id   = $id;
$schreiber = $autor;
$comment   = $kommentar;
$ip        = getenv('REMOTE_ADDR');
$host      = getenv('REMOTE_HOST');
$userdaten = $HTTP_USER_AGENT;
$host      = "".$host." - ".$userdaten."";
$zeit      = time();

$sql_query = mysql_query("INSERT INTO $CFG[tb_comm] VALUES ('', '$link_id', '$schreiber', '$comment', '$zeit', '$ip', '$host')");

 if(!$sql_query) {
echo mysql_error();
exit;

}
// Nach erfolgreichem eintragen wird die show.php wieder aufgerufen
header("Location: index.php?action=show&id=$id");
}
// Hier endet der Code zum Eintragen
?>

<?php
// Hier werden die Kommentare (falls vorhanden) angezeigt

   include("config.inc.php");

   $conn = mysql_connect($CFG[db_server], $CFG[db_user], $CFG[db_pass]);
   mysql_select_db($CFG[db_name], $conn);
   
$sql_text = ("SELECT * from $CFG[tb_comm] WHERE link_id = '$id' ORDER BY id ASC");

$query = mysql_query($sql_text);

echo "<center><h4>Kommentare</h4>";

while ($result = mysql_fetch_array($query)) {

$zeit      = date("d.m.Y @H:i", $result['zeit']);

echo "<center><table border=0 width=450><tr>";

echo "<td width=\"400\" valign=\"top\" bgcolor=c0c0c0> geschrieben von <b>$result[autor]</b> am $zeit</td></tr>
       <tr><td>&nbsp</td></tr>
       <tr><td valign=\"top\" border=1> $result[kommentar]</td></tr></center><br><br>";
}
// Hier endet der Code zum anzeigen der Kommentare
?>

// Hier beginnt der Formularteil, der zum eintragen der Kommentare zuständig ist

<form name="comment" action="index.php?action=comment&id=<?php echo $id;?>" method="post">

<input type="hidden" name="senden" value="add">

<table cellspacing="0" cellpadding="3" border="1" bordercolor="ffffff" width="500">

 <tr bgcolor="c0c0c0">
  <td align="right" width="30%">Name:</td>
   <td width="70%">
    <input type="text" name="autor" size="35" maxlength="150">
   </td>
 </tr>

 <tr>
  <td align="right" valign="top">Kommentar:</td>
   <td>
    <textarea name="kommentar" rows="8" cols="40" style="width: 100%"></textarea>
   </td>
 </tr>

<td>
   <input type="submit" value="Kommentar abgeben" class="button">
</td>

</table></div></center></form>
// Hier endet das Formular

Der PHP-Code hat die Funktion, das die User Kommentare zu einem Link abgeben können, bzw. die Kommentare angezeigt werden.

Meine Frage dazu: WIE realisiere ich es nun, das die IP, die mit in der Tabelle für die Kommentare eingetragen wird, für z.b. 3 Minuten, gesperrt wird. Ich habe schon einiges ausprobiert, aber ich kriegs nicht gebacken, den Code für die IP-Sperre richtig einzubinden :(

Wäre nett, wenn ihr mir einen lauffähigen Code (nur für IP-Sperre) geben könntet, so daß ich diesen sofort übernehmen kann...

BIG :)

He@dkiller
 
Hallo

PHP:
$time = time();
$ip = $_SERVER['REMOTE_ADDR'];
$zeiger = 0;
$sql="select 
       ip, 
       uhr 
      from 
       $tablegast"; 
$result = mysql_query($sql); 
while($row=mysql_fetch_array($result,MYSQL_ASSOC)) { 
 if (($row['ip'] == $ip) && (time()-$row['uhr'] < 180)){ 
 $zeiger = 1;
 } 
} 
if ($zeiger == 1){
echo "<center><font color=\"#ff0000\" size=\"-1\" face=\"Verdana, sans-serif\">Sie k&ouml;nnen zum jetzigen Zeitpunkt keinen Eintrag ins G&auml;atebuch machen !<br>Kommen Sie bitte zum sp&auml;teren Zeitpunkt nochmal.</font></center>";
} else { 
.
.
.
dein Code
}
Natürlich müssen "IP" und "UHRZEIT" mit in die DB rein.
Das Script muss auch ganz oben stehen, damit auch geprüft werden kann.
So habe ich das in meinem Gästebuch gelöst.
Vielleicht hilft es ja ein wenig.

Viel Spass

euer SaTaN
 
Zuletzt bearbeitet:
@ SaTaN:

DAAAAAAAAAAAANKKKKKKKKKKKKKKKKKEEEEEEEEEEEEEEEEEE :-)

Dein Codeschnipsel hat mir super geholfen, endlich funktioniert die IP-Sperre *freu tanz hüpf* :-)

btw: Hatte so in der Art auch schon was gecodetet, aber irgendwo war ein Denkfehler :-)

Gr33tz, He@dkiller
 
Zurück