Ich versuche(hab ich eigentlich schon gemacht) einen counter für meine Homepage zu schreiben. Der funktioniert auch schon, nur will ich jetzt auch noch die IP Adresse überprüfen, damit nicht immer weitergezählt wird, wenn jemand auf aktualisieren klickt.....
So weit so gut, nur häng ich beim schreiben der IP Adresse in die MySQL Datenbank. Vielleciht weiß ja jemand was ich falsch mache....
Das is jetzt nur der Teil mit der IP Adresse, weil wie gesagt der Rest funktioniert ja schon.
PHP-Code:
$link = mysql_pconnect($host, $user, $passwd);
$query_ip = "use $db";
if ( !mysql_query($query_ip, $link) )
die("Die Datenbank $db existiert nicht.");
// Ermittlung der IP des letzten Users
$query_ip = "select ip from count";
$res_ip = mysql_query($query_ip, $link);
if ( !$res_ip )
die("Die Anfrage '$query_ip' konnte nicht ausgeführt werden.");
while ( $data_ip = mysql_fetch_array($res_ip) ) {
list($key_ip, $value_ip) = each($data_ip);
}
$ip_old = $value_ip;
$ip = getenv("HTTP_X_FORWARDED_FOR");
$result = strcasecmp($ip,$ip_old);
if($result != 0)
{
$udate2 = "update count set ip = $ip";
if (!$udate2_ok)
die("Das Updaten der Datenbank IP schlug fehl");
}
Ich bekomm immer als "Fehlermeldung": Das Updaten der Datenbank IP schlug fehl. Hat also nicht wirklich funktioniert.
Das Feld ip in der Tabelle count ist vom Typ varchar(100). Wenn ich statt $ip eine IP Adresse händisch schreibe kann er in die DB schreiben. Auch wenn ich irgendeinen anderen Text eintrage funktioniert das schreiben in die Datenbank. Nur die Variabel $ip lässt sich nicht eintragen.
Hab auch schon überprüft ob $ip eh ein String ist, aber das ist einer.
Wissts ihr woran es noch liegen könnt?