In dem Fall sind die Angaben bei Limit identisch. Bei LIMIT kann man entweder nur eine Angabe machen, die dann festlegt, wieviele Datensätze zurückgegeben werden sollen, oder eben bei Bedarf zwei Parameter, wobei der erste für den Beginn der Abfrage steht (z.B. bei Seitenaufteilung wichtig) und der zweite wie zuvor für die Anzahl der Datensätze, die zurückgegeben werden sollen.
Ich habe jetzt aber auf die Schnelle auch keinen möglichen Fehler gefunden, vielleicht find ich ja gleich noch was
//edit: @SvenSun: Ich würde dein Script mal ein bisschen anders strukturieren und konzipieren, so wie es im Moment ist finde ich das persönlich sehr unpraktisch und komisch gelöst.
Ich würde einfach in der Datenbank die IP, die Besuchszeit und die letzte Aktivität speichern.
So sparst du Platz in der Datenbank und es ist einfacher zu verwalten.
Dann würde ich einfach abfragen, ob die aktuelle IP schon in der Datenbank steht.
Ist das der Fall, wird die letzte Aktivität aktualisiert, wenn nicht, erstellst du eine neue Zeile.
Außerdem würde ich die if-Abfragen für den "Such"query eher so gestalten:
- Code: Alles auswählen
$result = mysql_query(QUERY);
if($result && mysql_num_rows($result)>0)
{
// Aktivität aktualisieren
}
else {
// neuer Eintrag
}
So wird nicht nur überprüft, ob der Query durchgeführt werden konnte (was ja noch nichts darüber aussagt, ob ein Ergebnis zurückgeliefert wurde), sondern eben auch, ob es passende Datensätze gab.
Das ist vielleicht auch der Grund dafür, dass dein aktuelles Script nicht wirklich zuverlässig arbeitet
