Counter Besucher Heute,gestern

also den Syntax kann ich Dir gerne als Denkanstoss geben, aber das Script werde ich Dir nicht umschreiben, sorry, aber Selbst ist der Mann bzw. Frau ;) ..ausserdem sollst Du ja auch noch was Lernen. *g*

ok, also die DELETE / SELECT funktion (um die daten zu loeschen die aelter als 2 Tage sind oder die der vergangenen 2 TAge auszulesen) "koennte" so aussehen:

Code:
DELETE/SELECT FROM ip WHERE zeit < DATE_SUB(now(), INTERVAL 2 day)

aber wie gesagt, es sind "Denkanstoesse" ... sozusagen Learning by Doing :-)
 
Ja ne is klar du sollst mir ja auch nicht das scrip vorsagen. Aber aus dem bin ich jetzt auch net sonderlich schlauer geworden *g* :-) . Ich Hab nur keine vorstellung wie ich das Datenbankmässig aufbauen soll. Weil ich brauch doch sicher ne extra Tabelle für die Anzahl der User von heute und gestern. Wie gesagt ich will doch net das Script sondern nur die Theorie wie mans machen könnte... (Mit dem Scriptausschnitt denn du hier gepostet hast)

Achso mal noch ne Frage. Was gibt date() aus? Einen Integerwert oder? Weil das muss ich doch erst mit timestamp umwandeln oder?
MfG 2Pac
 
Zuletzt bearbeitet:
So hab mich jetzt mal etwas intensiver mit dem Problem beschäftigt...

PHP:
<? 
include("mysqlconnect.php"); 
$datum = mktime (0 ,0 ,0 ,date("%m"),date("%d"),date("%Y"))
$zeit = time();
$sql = mysql_query("SELECT * FROM ip WHERE ip='$REMOTE_ADDR'") OR die(mysql_error()); 
    if(mysql_num_rows($sql) < 1) { 
    mysql_query("UPDATE hits SET hits=hits+1") OR die(mysql_error()); 
    mysql_query("INSERT INTO ip (zeit, ip) VALUES ('$zeit', '$REMOTE_ADDR')") OR die(mysql_error());
$datum = mysql_query("SELECT * FROM counter where datum='$datum'") OR die(mysql_error());
(if $datum == 1)
{
 mysql_query("UPDATE hits SET leute=leute+1 where datum='$datum'") OR die(mysql_error()); 
}
else
{
 
} 
} 

$del = $zeit - 5200; 
mysql_query("DELETE FROM ip WHERE zeit < $del") OR die(mysql_error()); 

$sql = mysql_query("SELECT * FROM hits") OR die(mysql_error()); 
$counterhits = mysql_fetch_array($sql); 
mysql_close(); 
?>
Und jetzt weiss ich nicht weiter was ich machen soll wenn der Tag noch nicht vorhanden ist! Ich will ja nicht 1000 Einträge machen. Sondern nur 2 Datensätze haben hits heute und hits gestern. Er soll also quasi jetzt die von "heute" nehmen und bei gestern rein machen. Und dann heute mit 1 ersetzen :( hat da jemand eine Idee?
 
Hallo 2Pac und alle anderen !

Also ich habe das gleiche vor wie 2Pac. Doch aus diesen Hilfen hier bin ich in einer Sache noch nicht so ganz schlau geworden : Wieviele Tabellen brauche ich in der db ? Genügt eine in der alles gespeichert wird ?
Könnte vielleicht auch jemand schreiben welche spalten die Tabelle/n dann brauchen ?

Wenn ich dies weiß denke ich mal ist der Rest schon etwas einfacher zu überlegen wie es dann weiter geht !
 
Gut ok habe mal meinen Grips angestrengt !

Also per DatenBank bekomme ich das nicht ganz so hin doch speicherbar auf txt dateien habe ich kein problem !
Kann aber erst morgen testen ob dies auch mit dem zähler für ONLINE-GESTERN funktioniert !

Vielleicht hat dann ja jemand ne idee wie man dies mit einer db machen kann!
 

Anhänge

Hi wie sieht es den mit der Besucherzählung aus wenn mehrere Rechner (z.B. Büronetzwerk) an einem Router hängen? Denn haben durch den Router alle PC die gleiche IP, wenn dann mein Arbeitskolege auf der Seite war, wird mein Besuch nicht gezählt oder wie... Denkbar wäre ne einfache Lösung beim Aufruf der Seite die SESSION_ID in die db zu speichern, den die ist pro Sitzung,also SESSION einmalig...
 
Zurück