Counter

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • hallo liebe php-profis,

    ich bräuchte für meine seite einen counter, der die besuche der seite darstellt. leider kenn ich mich in php nicht so gut aus und die free-counters sind alle mit werbung die ich nicht haben will. vielleicht könnt ihr mir ja weiterhelfen.
    vielen dank im vorraus.
    die frabe der ziffern sollte schwarz sein.

    greez duplex
    [font="Fixedsys"]
    Neulinge! * Regeln! * Suchfunktion!
    Freesoft-Board IRC! * Freesoft-Board Teamspeak![/font]
    Erfolg heißt, einmal mehr aufstehen, als hinfallen!
  • hmmm.... ein simpler counter:

    counter.php

    PHP-Quellcode

    1. <?php
    2. if(is_file('cou.txt'))
    3. {
    4. $fp = fopen("cou.txt","r-");
    5. fseek ($fp,0);
    6. $wert = fread($fp,4096);
    7. fclose ($fp);
    8. } else { $wert=0; }
    9. $wert = intval($wert);
    10. $wert++;
    11. $wert = strval($wert);
    12. $fp = fopen("cou.txt","w+");
    13. fwrite($fp,$wert);
    14. fclose($fp);
    15. ?>
    Alles anzeigen


    in deiner index.php schreibst du nun an der stelle, wo der Counter sein soll:

    PHP-Quellcode

    1. <?php
    2. include("counter.php");
    3. echo "Anz. Besucher: $wert";
    4. ?>


    allerdings, kann mann durch den Aktualisieren-Button jetzt die Besucherzahlen nach oben treiben. Wenn du das nicht willst, müsstest du noch ein cookie setzen. Vielleicht meld ich mich dann nochmals, wenn ich mehr Zeit habe...
    mein PC . . meine Blackliste . . Download mit FlashFXP
    [SIZE="2"]im moment NICHT aktiv, PN's werden warscheinlich nicht gelesen^^[/SIZE]
  • Beschreibung:
    » PHP Erforderlich
    » einfache Installation
    » Design ist anpassbar

    » Ip - Sperre
    » Seitenaufrufe
    » Online anzeige !New!

    Einfach ein Ordner erstellen namens "Counter"

    Dann folgende Dateien im Ordner einfügen:

    counter.dat
    0


    useronline.dat

    hits.txt

    counter.php
    <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="11%" id="AutoNumber1">
    <tr>
    <td width="100%" bgcolor="#9DCDFD">
    <p style="margin-top: 0; margin-bottom: 0" align="center"><font size="2"><b>
    .::</b></font><b><font size="2"><span style="background-color: #9DCDFD">Statistik</span>::.</font></b></td>
    </tr>
    <tr>
    <td width="100%" bgcolor="#CEE6FE"><?php include("func.php"); ?>&nbsp;</td>
    </tr>
    </table>


    func.php
    <b><?
    $ip = getenv ("REMOTE_ADDR");
    if( file_exists("ip/$ip.ip"))
    {
    $lesaus = file("counter.dat");
    echo"$lesaus[0]";
    }
    else
    {
    $lesaus = file("counter.dat");
    $lesaus[0]++;
    $datei = fopen("counter.dat","r+");
    $datenm="$lesaus[0]";
    rewind($datei);
    fwrite($datei,$datenm);
    fclose($datei);
    echo"$lesaus[0]";
    $file = fopen("ip/$ip.ip","w+");
    $datenm="$ip";
    fwrite($file,$datenm);
    fclose($file);
    }

    ?>
    Besucher
    <p style="margin-top: 0; margin-bottom: 0">
    <?php
    $datei = "hits.txt";
    if (file_exists($datei)) {
    $oeffnen = fopen($datei, "r");
    $zahl = fread($oeffnen, filesize($datei));
    fclose($oeffnen);
    print "$zahl Seitenaufrufe";
    if (is_writeable($datei) && ($zahl>0)) {
    $oeffnen = fopen($datei, "w");
    $zahl++;
    fwrite($oeffnen, $zahl);
    fclose($oeffnen);
    }
    }

    ?>
    <p style="margin-top: 0; margin-bottom: 0">
    <?

    echo '<body>';


    $count=0;
    $time = time();
    $ip = getenv(REMOTE_ADDR);
    $text=$time."#".$ip."\n";
    $filename="useronline.dat";
    $zeile = file($filename);

    $fp = fopen($filename , "w");
    ftruncate ($fp, 0);
    rewind($fp);
    foreach($zeile as $schreiben)
    {
    $array = explode("#",$schreiben);
    if($ip==rtrim($array[1])){$vorhanden=1;}
    if($array[0] > $time -600 & $ip!=$array[1])
    {
    fwrite ($fp, $schreiben, 750);
    }
    }
    fclose($fp);

    $id = filesize($filename);
    if($vorhanden!=1 or $id==0){
    $datei = fopen($filename,"a");
    flock($datei,2);
    fwrite($datei,$text,750);
    flock($datei,3);
    fclose($datei);
    }




    for($x=0;$x<count($zeile);$x++){$count=$count+1;}
    echo '<font class=textus>'; echo $count;echo ' online</font>';

    ?>
  • duplex schrieb:

    @ restore
    und was soll ich in meine index einfügen? ich mein welches bild, link oder was weiss ich???

    greez duplex

    Das was bei Counter.php steht, kommt in den Bodybereich:

    PHP-Quellcode

    1. <html>
    2. <head>
    3. <title>Titel</title>
    4. </head>
    5. <body>
    6. Blabla<br>
    7. Counter>
    8. <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="11%" id="AutoNumber1">
    9. <tr>
    10. <td width="100%" bgcolor="#9DCDFD">
    11. <p style="margin-top: 0; margin-bottom: 0" align="center"><font size="2"><b>
    12. .::</b></font><b><font size="2"><span style="background-color: #9DCDFD">Statistik</span>::.</font></b></td>
    13. </tr>
    14. <tr>
    15. <td width="100%" bgcolor="#CEE6FE"><?php include("func.php"); ?>&nbsp;</td>
    16. </tr>
    17. </table>
    18. </body>
    19. </html>
    Alles anzeigen

    Auf Deutsch,da wo dein Counter hinkommt, da schreibste den die Tabelle da hin.
  • ok das hat soweit alles wunderbar geklappt, nur er zählt nicht, geschweige denn es steht gar keine zahl da, nur "Statistik". darunter ist was frei für wahrscheinlich die besucherzahlen, mehr aber leider nicht.

    danke schonmal für eure hilfe.

    und wo kann man die besucherzahlen verändern? oder einstellen, dass sie nicht von null anfangen sollen?

    greez duplex
    [font="Fixedsys"]
    Neulinge! * Regeln! * Suchfunktion!
    Freesoft-Board IRC! * Freesoft-Board Teamspeak![/font]
    Erfolg heißt, einmal mehr aufstehen, als hinfallen!
  • also folgendermaßen siehts aus:
    hab den ordner "Counter" erstellt und die dateien erstellt, wie restore es gesagt hat. dann hab ich den ordner mit den dateien hochgeladen. dann ch mod 777 dem ordner und den dateien gegeben. jetz thab ich an der stelle wo ich den counter haben will das kästchen aber da sind keine ziffern drin. woran kann das liegen?

    greez duplex
    [font="Fixedsys"]
    Neulinge! * Regeln! * Suchfunktion!
    Freesoft-Board IRC! * Freesoft-Board Teamspeak![/font]
    Erfolg heißt, einmal mehr aufstehen, als hinfallen!
  • nein. seite ist mein geheimnis :)

    hab folgendes gemacht:

    1. counter.php mit folgendem inhalt erstellt:

    Quellcode

    1. <?
    2. if (file_exists("counter.txt"))
    3. {
    4. $datei=fopen("counter.txt","r");
    5. $zaehler=fgets($datei,255);
    6. fclose($datei);
    7. }
    8. $zaehler++;
    9. $datei=fopen("counter.txt","w");
    10. fputs($datei,"$zaehler");
    11. fclose($datei);
    12. echo "<b>$zaehler.</b> Besucher";
    13. ?>
    Alles anzeigen


    2. testdatei counter.txt mit folgendem inhalt erstellt:

    Quellcode

    1. 0


    so und dann nur noch auf der seite eingebunden.

    da gibts keine bugs ;)

    danke nochmal für eure hilfe.
    es hat mir mal wieder gezeigt, dass ich php lernen muss ;)

    greez duplex
    [font="Fixedsys"]
    Neulinge! * Regeln! * Suchfunktion!
    Freesoft-Board IRC! * Freesoft-Board Teamspeak![/font]
    Erfolg heißt, einmal mehr aufstehen, als hinfallen!
  • Will hier jetzt jeder nen Counter ???
    Naja, zu dem zur Zeit auf der Seite:
    Bau den oben genannten Counter, und dann bau in deinen body-tag noch onabbort="abziehen.php" oder so ein, und da steht dann oben genanntes, nur statt zaehler++, zaehler--, so sollte es eigentlich gehen, schreiben darfst selber :D .
  • kurim schrieb:

    sers,

    ich bräuchte auch einen Counter aber etwas anders :D

    Besucher Heute
    Besucher Gestern
    Z.zt. auf der Seite

    mehr nit :D


    haste php mit mysql? dann scribble ich dir eben einen!

    Wenn kein MySQL sondern nur PHP: Frag wen anders, ich hasse fopen ^^

    mfg telax
  • hab nochmal eine frage zu meinem counter: wie kann ich eine ip-sperre reinmachen? also ich mein, dass man nicht durch auf aktualisieren den counter in die höhe treiben kann?
    in meiner counter.php datei steht folgendes:

    Quellcode

    1. <?
    2. if (file_exists("counter.txt"))
    3. {
    4. $datei=fopen("counter.txt","r");
    5. $zaehler=fgets($datei,255);
    6. fclose($datei);
    7. }
    8. $zaehler++;
    9. $datei=fopen("counter.txt","w");
    10. fputs($datei,"$zaehler");
    11. fclose($datei);
    12. echo "<b>$zaehler.</b> Besucher";
    13. ?>
    Alles anzeigen


    greez duplex
    [font="Fixedsys"]
    Neulinge! * Regeln! * Suchfunktion!
    Freesoft-Board IRC! * Freesoft-Board Teamspeak![/font]
    Erfolg heißt, einmal mehr aufstehen, als hinfallen!
  • telax schrieb:

    haste php mit mysql? dann scribble ich dir eben einen!

    Wenn kein MySQL sondern nur PHP: Frag wen anders, ich hasse fopen ^^

    mfg telax



    hab beides

    wo kommen wir denn da hin nur php zu haben
  • kurim schrieb:

    sers,

    ich bräuchte auch einen Counter aber etwas anders :D

    Besucher Heute
    Besucher Gestern
    Z.zt. auf der Seite

    mehr nit :D



    Ich werden dir in den nächsten Tagen so einen Programmieren.
    Hab noch andere Aufträge ;)

    gruss restore
  • duplex schrieb:

    hab nochmal eine frage zu meinem counter: wie kann ich eine ip-sperre reinmachen? also ich mein, dass man nicht durch auf aktualisieren den counter in die höhe treiben kann?
    in meiner counter.php datei steht folgendes:

    Quellcode

    1. <?
    2. if (file_exists("counter.txt"))
    3. {
    4. $datei=fopen("counter.txt","r");
    5. $zaehler=fgets($datei,255);
    6. fclose($datei);
    7. }
    8. $zaehler++;
    9. $datei=fopen("counter.txt","w");
    10. fputs($datei,"$zaehler");
    11. fclose($datei);
    12. echo "<b>$zaehler.</b> Besucher";
    13. ?>
    Alles anzeigen


    greez duplex


    Das besste ist n Counter mit MYSQL zu machen und nicht mit ner Datei, weil dann kann man auch die IPs kurzzeitig speichern!

    Werd so einen in den nächsten Tagen schreiben mal guggn, hab noch 2 Klausuren diese Woche :-/
  • hey, ich würd mich auch interessieren für nen counter wie kurim ihn will :)
    wär echt cool, im mom hab ich son freeware teil, aber bei dem kann ich das design nicht anpassen...
    also schreibs bitte rein wenn du zeit hast :)