Ergebnis 1 bis 2 von 2

Thema: GaFleX' Simple Counter (File basiert)

  1. #1
    TP-Veteran Avatar von Daniel N.
    Registriert seit
    Sep 2002
    Ort
    Schweiz
    Beiträge
    1.307

    Lightbulb GaFleX' Simple Counter (File basiert)

    Tja Leute ich will jetzt auch mal ein Script zum "Besten" geben. Es handelt sich dabei um nen very simple Counter. Ich als Anfänger bin aber mächtig stolz darauf.

    Voraussetzungen:

    • PHP-Fähigen Webserver (logisch oder?)
    • PHP Datei 'counter.php'
    • TXT-File 'count.txt'


    Beginnen wir mit dem Code im nächsten Beitrag.
    Geändert von GaFleX (08.08.2003 um 20:38 Uhr)

    Passt auf, ich bin überheblich

    http://orangetree.ch-gnu.ath.cx

  2. #2
    TP-Veteran Avatar von Daniel N.
    Registriert seit
    Sep 2002
    Ort
    Schweiz
    Beiträge
    1.307
    PHP-Code:
    <?php
    $filename 
    "counter.txt"//(1)
    $counterfile = @fopen ($filename "r");
    if (
    $counterfile <= 0) {
        echo 
    "Counter not available";
        exit;
    }
    else {
        
    $counter fgets($counterfile);
        
    fclose($counterfile);
    //(2)
    }
    ++
    $counter;
    echo 
    "Sie sind Besucher Nummer: " $counter;

    //(3)

    $counterfile = @fopen ($filename "w");
    flock ($counterfile"2");
    fputs ($counterfile$counter);
    flock ($counterfile"3");
    fclose ($counterfile);
    ?>
    Zu 1: Als erstes wird in der Variable $filename Dateiname und falls sich die Datei nicht im selben Verzeichniss befindet der Pfad gespeichert. Name sowie Endung sind dabei frei wählbar. Die Datei muss den Startwert 0 enthalten.

    Nun wird die Datei geöffnet. Treffen die Bedingungen der if-Schleife nicht zu, wird eine Fehlermeldung ausgegeben. Ansonsten wird der Inhalt der Datei ausgelesen. Dies geschieht mit fgets. Datei wird nun erstmal wieder geschlossen.

    Zu 2: Die Variable $content wird um 1 erhöht, (Logisch, du bist ja ein Besucher ) und anschliessend mit echo() ausgegeben.

    Zu 3: Die Zähler-Datei wird abermals geöffnet, diesmal im write Modus und mit den neuen Werten überschrieben.
    Die Funktion flock verhindert, dass eine andere Instanz des Scripts darauf zugreift, bis sie aktualisiert wurde.

    flock kann vier Operationen ausführen:
    1 - für alle lesbar aber nicht veränderbar
    2 - für keine andere Instanz lesbar oder änderbar
    3 - eine Sperre aufheben
    4 - Zugriffe während der Sperre erlauben.

    Ich hoffe, dass ich mein Script ausführlich erklärt habe!

    mfg GaFleX

    Passt auf, ich bin überheblich

    http://orangetree.ch-gnu.ath.cx

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51