zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden Counter

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 12.08.2006, 16:56
Benutzerbild von Despairing
Despairing.org
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 31.05.2006
Beiträge: 277
Despairing befindet sich auf einem aufstrebenden Ast
Standard Counter

Habe damals mal ein PHP Script für einen Counter bekommen.
Aber seltsamerweise spinnt der Counter regelrecht, denn bei vielen Besuchern am Tag, verändert sich die "Besucher heute"-Anzahl mal so und mal so.

Beispiel: Heute um 13:00 Uhr zeigt der Counter "260 Besucher heute" an und um 17:00 Uhr zeigt der Counter "85 Besucher heute".
Aber das passiert, wie bereits erwähnt, nur dann, wenn am Tag (sehr) viele Homepagebesucher auf die Webseite gehen.

Woran liegt das und wie kann man das PHP Script optimal ändern, so dass das nicht mehr passieren kann/wird?

Hier das PHP Script: Entfernt.
__________________
www.despairing.org

Geändert von Despairing (09.01.2007 um 12:56 Uhr)
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 12.08.2006, 21:31
C2 mediaproduction
neuer user
 
Registriert seit: 04.04.2005
Ort: Leipzig
Beiträge: 62
s0nic befindet sich auf einem aufstrebenden Ast
Standard

Ich vermute, daß das Problem an folgendem liegt: Wenn Du eine Datei öffnest, dann nicht exklusiv. Das heißt, daß es theoretisch vorkommen kann, daß eine Datei 2x geöffnet wird. Erschwerend kommt evtl. hinzu, daß die Datei im Modus 'w' geöffnet wird, d.h. der Dateinhalt erstmal gelöscht wird.

Ich bin mir nicht sicher, aber theoretisch könnte somit folgendes passieren:
- Besucher 1 kommt auf die Seite -> Prozess A
- A: Datei wird geöffnet
- A: Besucherzahl (z.B. 1234) wird in Zwischenspeicher geschrieben
- A: Inhalt der Datei wird gelöscht
- Besucher 2 kommt auf die Seite -> Prozess B
- B: Datei wird geöffnet, aber es steht nichts drin (Zähler ist also bei "0")
- B: "0" wird in den Zwischenspeicher geschrieben
- A: 1234 wird inkrementiert und in die Datei geschrieben
- A: Datei wird geschlossen
- B: 0 wird inkrementiert und in die Datei geschrieben
- B: Datei wird geschlossen

Ergebnis: Vorher stand 1234 drin, jetzt steht 1 drin. Wenn das nur einmal am Tag passiert, dann kommen solche seltsamen Besucherzahlen zustande, wie du sie beschreibst.

Verhindern kann man dies mit flock(). Dadurch erhält man exklusive Rechte an die geöffnete Datei und das "Kuddelmuddel" sollte nicht mehr passieren.
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 15.08.2006, 08:59
Benutzerbild von Despairing
Despairing.org
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 31.05.2006
Beiträge: 277
Despairing befindet sich auf einem aufstrebenden Ast
Standard

Ich kenne mich mit PHP kaum aus ...

Könntest du mir nicht weiterhelfen, irgendwie?
__________________
www.despairing.org
Mit Zitat antworten
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP - TXT Counter ohne My SQL Datenbank gesucht. rommy Serveradministration und serverseitige Scripte 5 07.08.2011 08:01
Counter auf htmlseiten einbinden PHP-Freak Serveradministration und serverseitige Scripte 17 15.04.2009 22:12
Shtml auf jeder Seite einbinden - counter iVx Serveradministration und serverseitige Scripte 1 13.09.2007 17:31
Suche einen Besucher Counter mit Reloadsperre Tobias (X)HTML 3 26.01.2006 15:05
Counter mit CSS aufpeppen??? Jollo CSS 3 26.12.2004 20:32


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:33 Uhr.