Ergebnis 1 bis 5 von 5

Thema: [PHP] Zählen oder pro ausgeführtem Script +1

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Zuerst mal will ich eine Sache anmerken: Vermeide es, Literale (also feste Zahlenwerte) in deinen Code zu schreiben. Bei dir steht die Zahl 999 an mehreren Stellen, da würde es Sinn machen am Anfang eine Variable $items_pro_seite zu definieren und sich weiter unten auf die zu beziehen. Das hat den Vorteil, daß du, wenn due die Anzahl der Einträge pro Seite ändern willst, die Datei nur an einer Stelle verändern mußt.

    Was dein eigentliches Problem angeht: Da weiß ich nicht so wirklich, was du willst. Willst du, daß der Zähler jedes Mal erhöht wird, wenn das Skript aufgerufen wird oder willst du, daß das Skript für jede Datei einen Zähler erhöht?
    Im ersten Fall bruchst du einen externen Speicher wie eine Datei oder eine Datenbank.
    Im zweiten Fall mußt du lediglich folgenden Code in deine Schleife einbauen (wo der hinmuß wirst du schon rausfinden) und dich im HTML-Teil auf $lfdNr beziehen:

    Code:
    // $current_page ist ein Wrapper für $_GET['page']; siehe unten.
    $lfdNr = ($current_page * $items_pro_seite) + $i;
    
    // Der Code oben geht davon aus, daß $_GET['page'] bei der ersten Seite 0 ist.
    //  Falls $_GET['page'] bei der ersten Seite 1 ist nimm' diese Zeile.
    $lfdNr = (($current_page - 1) * $items_pro_seite) + $i;
    Da wir nicht sicher sein können, daß $_GET['page'] gesetzt ist und es unsauber wäre, in $_GET herumzuschreiben verwenden wir eine zweite Variable, um $_GET['page'] darzustellen (auch dann, wenn es nicht existiert):
    Code:
    $current_page = (null !== $_GET['page']) ? $_GET['page'] : 0; // Tu' diese Deklaration an den Anfang des Skripts

  2. #2
    Zitat Zitat von J666
    Im ersten Fall bruchst du einen externen Speicher wie eine Datei oder eine Datenbank.
    Da ich denke, dass du (@ Armi) das meinst, hier mal ein Code dafür:
    PHP-Code:
    $datei fopen ("hits.txt""rb");
    $hits fgets ($datei);
    fclose ($datei);
    $hits = (int) intval ($hits);
    $hits $hits;
    $datei fopen ("hits.txt""wb");
    fwrite ($datei"$hits");
    fclose ($datei); 
    Davor solltest du halt eine Datei "hits.txt" mit Inhalt "0" erstellen, würde aber glaube ich auch so funktionieren.

  3. #3
    Einfacher gehts so:
    PHP-Code:
    <?php
    $hits 
    file_get_contents('counter.txt');
    file_put_contents('counter.txt', ++$hits);
    ?>

  4. #4
    Zitat Zitat von Manni
    Einfacher gehts so:
    PHP-Code:
    <?php
    $hits 
    file_get_contents('counter.txt');
    file_put_contents('counter.txt', ++$hits);
    ?>
    Da funkioniert aber nur, wenn man entweder PHP5 benutzt oder das entsprechende Kompatibilitäts-Include aus PEAR verwendet.

Berechtigungen

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