F
Flup
Gast
Hallo zusammen,
ich wollt auf meiner Homepage nen kleinen Besucherzähler einbauen. Damit wirklich nur jeder Besucher und nicht jeder Klick gezählt wird, speicher ich die IP-Adresse eine Stunde lang in einer Tabelle, die aus 3 Spalten besteht: id (INT, AUTO_INCREMENT, INDEX), ip (TEXT) und timestamp (TIMESTAMP).
Die höchste ID stellt somit die Anzahl meiner Besucher dar. Damit nun, wie gesagt, jede IP nur einmal geloggt wird, darf ein neuer Wert in die Tabelle nur eingefügt werden, wenn es die IP noch nicht gibt. Dafür hätte ich mir den Code zusammengezimmert:
Nur speichert das irgendwie gar nichts mehr, sobald ich den Teil ab "WHERE NOT EXISTS" reinschreibe. (Ohne den Teil wird halt jeder klick gespeichert.) Jemand ne Idee wo mein Fehler liegt?
Danke
Flup
ich wollt auf meiner Homepage nen kleinen Besucherzähler einbauen. Damit wirklich nur jeder Besucher und nicht jeder Klick gezählt wird, speicher ich die IP-Adresse eine Stunde lang in einer Tabelle, die aus 3 Spalten besteht: id (INT, AUTO_INCREMENT, INDEX), ip (TEXT) und timestamp (TIMESTAMP).
Die höchste ID stellt somit die Anzahl meiner Besucher dar. Damit nun, wie gesagt, jede IP nur einmal geloggt wird, darf ein neuer Wert in die Tabelle nur eingefügt werden, wenn es die IP noch nicht gibt. Dafür hätte ich mir den Code zusammengezimmert:
PHP:
mysql_query("INSERT INTO `ip_table` (`id`, `ip`, `timestamp`) VALUES (NULL , '".$_SERVER['REMOTE_ADDR']."', CURRENT_TIMESTAMP) WHERE NOT EXISTS (SELECT id FROM ip_table WHERE ip='".$_SERVER['REMOTE_ADDR']."');");
Nur speichert das irgendwie gar nichts mehr, sobald ich den Teil ab "WHERE NOT EXISTS" reinschreibe. (Ohne den Teil wird halt jeder klick gespeichert.) Jemand ne Idee wo mein Fehler liegt?
Danke
Flup