so eine art diebgame / reload Sperre
Also ich möchte, dass der User Punkte bekommt der "neu" auf die Homepage geht, ich möchte also durch Cookie 1 Tag, sowie IP Sperre(Proxys auch vorgesehen HTTP_X_FORWARDED_FOR ...) von einem Tag einsetzen, ich habs versucht jedoch klappt es mit meinem Code nicht , bitte um Hilfe
danke im vorraus
Also ich möchte, dass der User Punkte bekommt der "neu" auf die Homepage geht, ich möchte also durch Cookie 1 Tag, sowie IP Sperre(Proxys auch vorgesehen HTTP_X_FORWARDED_FOR ...) von einem Tag einsetzen, ich habs versucht jedoch klappt es mit meinem Code nicht , bitte um Hilfe
Code:
<?
// Datenbankangaben
$host = "localhost"; // SQL server
$db = "dname"; // Datenbankname
$user = "username"; // Benutzerlogin
$pw = ""; // Benutzerpasswort
$serverid = @mysql_connect ( $host, $user, $pw) or die ("Verbindung zur Datenbank nicht möglich!");
@session_start();
function userip() {
// Falls Proxy
if(getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else
// IP Adresse des Users
$ip = getenv("REMOTE_ADDR");
return $ip;
}
$usernameid = $_GET['usernameid'];
$ip = userip();
srand((double)microtime()*1000000);
$gewinnspielID = md5(uniqid(rand()));
$date = date("t");
$disagree= "warst schon hier";
$agree= "du hast5 punkte";
echo "$usernameid";
if (isset($_COOKIE['gewinnspiel']) or $_SESSION['gewinnspiel'] == "1337") {
echo $disagree;
}
else {
$sqlbefehl= "Select * FROM tblGewinnspiel where dtIP=$ip";
$ergebnis = mysql_query($sqlbefehl, $serverid);
// wenn es keine 0 Zeilen sind, soll man schauen op die IP einen Tag alt ist
if (@mysql_num_rows($ergebnis) == 0) {
$sqlbefehl = "INSERT INTO tblGewinnspiel (fiUsernameID, dtPunkte, dtIP, dtDate, dtGsID) VALUES ('$usernameid', '5','$ip','$date','$gewinnspielID')";
echo "$sqlbefehl";
if ($ergebnis = mysql_query($sqlbefehl, $serverid)) {
setcookie ("gewinnspiel", $gewinnspielID, time()+3600*24);
$_SESSION['gewinnspiel'] = "1337";
echo $agree;
}
else {echo "fu hard";};
}
else {
$gs = @mysql_fetch_array ($ergebnis);
$date2= $gs[dtDate];
$tag = $date2["t"];
$tagcheck = $date - $tag;
echo $tagscheck;
// wenn die IP nicht älter als einen Tag ist soll es in der DB gespeichert werden
if ($tagcheck != 0) {
$addgs = "INSERT INTO tblGewinnspiel (fiUsernameID, dtPunkte, dtIP, dtDate, dtGsID) VALUES ('$usernameid', '5','$ip','$date','$gewinnspielID')";
// wenn gespeichert werden sessionid und cookie gesetzt
if ($add = mysql_query($addgs, $serverid)) {
echo $agree;
$_SESSION['gewinnspiel'] = "1337";
setcookie ("gewinnspiel", $gewinnspielID, time()+3600*24);
}
}
// wenn IP älter als einen Tag
else { echo $disagree; }
}
}
?>
danke im vorraus
Zuletzt bearbeitet: