Hallo zusammen,
um zu zählen wie oft eine Aktion ausgeführt wurde, habe ich folgende Script geschrieben. (ähnlich wie eine Hit zähler)
$sidCountDB
include Datei um die Aktion zu zählen
Ausgabe auf mehreren Dokumenten
das Ganze funktioniert eigentlich wie gewollt, doch manschmal (in einer Woche 2 mal passiert) wird der Inhalt der Datenbank Datei ganz gelöscht.
auf meinen Localen Rechener Xampp habe ich es nicht reproduzieren können,
beim Googlen im Internet habe ich irgendwo gelesen, wenn der Datei zum schreiben noch nicht mit fclose geschlossen wurde ein zweites mal zum schreiben geöffnet wird, könnte es sowas verursachen. ....
hmmm... wie könnte ich sowas abfangen?
um zu zählen wie oft eine Aktion ausgeführt wurde, habe ich folgende Script geschrieben. (ähnlich wie eine Hit zähler)
$sidCountDB
Code:
5322|26|11924
include Datei um die Aktion zu zählen
PHP:
<?php
//daten sammeln
//jede erfolgreiche aktion wird gezählt am ende des tages wird wird die anzahl auf gestern übertragen
$today = date('d'); //heutige tag ermitteln
$sidCounts = file_get_contents($sidCountDB); //datenbank auslesen
list($sidCount, $day, $yesterdayCount) = explode("|", $sidCounts); //werte trennen
if ($day == $today) //prüfen ob es noch heute ist
{
$sidCount = $sidCount +1; // auf counter 1 addieren und speichern
$newSidCount = $sidCount.'|'.$today.'|'.$yesterdayCount;
$handle = fopen($sidCountDB, "w");
fwrite($handle, $newSidCount);
fclose($handle);
}
else
{
$yesterdayCount = $sidCount; //gezählte hits wird auf gestern übertragen
$sidCount = 1; //counter auf 1 gestellt und speichern
$newSidCount = $sidCount.'|'.$today.'|'.$yesterdayCount;
$handle = fopen($sidCountDB, "w");
fwrite($handle, $newSidCount);
fclose($handle);
}
?>
Ausgabe auf mehreren Dokumenten
PHP:
//sidcounter lesen und ausgeben
$sidCounts = file_get_contents($sidCountDB);
list($sidCountToday, $sidDay, $sidCountYesterday) = explode("|", $sidCounts);
echo .......
das Ganze funktioniert eigentlich wie gewollt, doch manschmal (in einer Woche 2 mal passiert) wird der Inhalt der Datenbank Datei ganz gelöscht.
Code:
1|26|
auf meinen Localen Rechener Xampp habe ich es nicht reproduzieren können,
beim Googlen im Internet habe ich irgendwo gelesen, wenn der Datei zum schreiben noch nicht mit fclose geschlossen wurde ein zweites mal zum schreiben geöffnet wird, könnte es sowas verursachen. ....
hmmm... wie könnte ich sowas abfangen?