Andreas: In Dstei Zählen

Hi,

ich wollte eine Routine schreiben, die Stimmabgaben mitzählt.
Das heißt jedes mal wenn das Abstimmungsformular abgeschickt rid soll mitgezählt werden.

Dazu lese ich aus der Datei idcount.txt das erste Zeichen.
Das könnte z.B. die 7 sein.
Diese wird um 1 erhöht und die 8 wieder in die Datei gespei‚chert.

Folgende Routine habe ich erstellt:

$datei=fopen("idcount.txt","r");
$count=fgets($datei,1);
fclose($datei);
$count++;
$datei=fopen("idcount.txt","w");
fwrite($datei,$count);
fclose($datei);

Aber nach jedem Durchlauf ist die Datei idcount nur noch 0 Zeichen groß.
Es wird nicht reingeschrieben.

Ändere ich den Code wie folgt gehts auch nicht:

$datei=fopen("idcount.txt","r");
$count=fgets($datei,1);
fclose($datei);
(int) $count;
$count++;
(string) $count;
$datei=fopen("idcount.txt","w");
fwrite($datei,$count);
fclose($datei);

D.h. Typumwandlung hilft auch nicht ?

Wer kann helfen ?

  1. folgendes funktioniert:

    $fp = fopen("count.htm","r+");
    $zahl = fgets($fp,10);
    $zahl++;
    rewind ($fp);
    fwrite($fp,$zahl);
    fclose($fp);
    echo $zahl;

    Keine Ahnung, ob das Problem bei dir an der Filelänge 1 liegt. (wäre sowieso zuwenig, wenn mehr als 9 Leute abstimmen)