Hallo,
ich habe hier einen Formailer, dem würde ich gerne eine Reloadsperre von 30 Minuten verpassen.
<form action="beitraege.php" method="post">
<table border="0">
<tr>
<td>
<font color="#148DC1" face="Arial" size="2">Kategorie:</font>
</td>
<td>
<select name="kategorie">
<?php
$res = $user->queryf("SELECT * FROM ".DB_PREF."kategorien ORDER BY name");
while($row = $res->fetch_array(MYSQLI_ASSOC)) {
?>
<option value="<?php echo $row['id']; ?>"><?php echo $row['name']; ?></option>
<?php
}
?>
</select>
</td>
</tr>
<tr>
<td>
<font color="#148DC1" face="Arial" size="2">Nickname:</font>
</td>
<td>
<input type="text" name="nick" maxlength="15"></input>
</td>
</tr>
<tr>
<td>
</td>
<td>
<textarea id="textarea" type="text" name="entry" maxlength="500" onkeyup="checkLen()"></textarea> verbleibende Zeichen:
<input type="text"name="zaehler"value="500"size="3"><br>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input id="startbox_button" type="submit" value="">
</td>
</tr>
</table>
</form>
Die beitraege.php sieht so aus:
<?php
require_once 'lib/config.php';
require_once 'lib/fehlertabelle.php';
require_once 'lib/functions.php';
require_once 'class/mysql.class.php';
require_once 'class/user.class.php';
require_once 'class/text.class.php';
$user = new user(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$needLogged = 0;
require_once 'lib/loggcheck.php';
//PHP PART
$error = '';
if(isset($_GET['action'], $_GET['id']) && $_GET['action'] == 'thumb' && is_numeric($_GET['id'])) {
$x = 0;
if($user->getCount("thumbs WHERE ip = '".$_SERVER['REMOTE_ADDR']."' AND beitragid = ".$user->real_escape_string($_GET['id'])) != 0) {
$x++;
}
if(LOGGED && $user->getCount("thumbs WHERE ip = '".$_SERVER['REMOTE_ADDR']."' AND beitragid = ".$user->real_escape_string($_GET['id'])) != 0) {
$x++;
}
if($user->getCount("beitraege WHERE id = ".$user->real_escape_string($_GET['id'])) != 1) {
$x++;
}
if($x===0) {
$user->queryf("INSERT INTO ".DB_PREF."thumbs (beitragid, ip) VALUES (%u, '%s')", $_GET['id'], $_SERVER['REMOTE_ADDR']);
header("Location: beitraege.php");
}
}
if(isset($_POST['entry'], $_POST['kategorie'], $_POST['nick'])) {
$user->queryf("INSERT INTO ".DB_PREF."beitraege (creator, text, kategorie, timestamp, ip, nick) VALUES (%u, '%s', %u, %u, '%s', '%s')", $userid, $user->getSetting('starttext')." ".htmlspecialchars($_POST['entry']), $_POST['kategorie'], time(), $_SERVER['REMOTE_ADDR'], $_POST['nick']);
header('Location: index.php');
}
//HTML PART
ob_start();
include("html/beitraege.php");
$pageCONTENT = ob_get_contents();
ob_end_clean();
//SEITE AUSGEBEN
include("lib/layout.php");
?>
Wie man sieht wird in der Datenbank-Tabelle "beitrage" die Ip und ein timestamp eingetragen, kann man da etwas machen? Habe davon wenig ahnung und würde mich sehr über hilfe freuen.
Danke!!!