Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] PHP Besucherzähler

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] PHP Besucherzähler

    Hallo,
    ich habe versucht einen Besucherzähler zu programmieren, der nach jedem Monat eine Mail, mit dem Besucherzählerstand in diesem Monat, sendet.
    Bei der if-Bedingung gibt es aus irgentwelchen Gründen ein Problem:
    Obwohl der Monat noch nicht herum ist wird trotzdem eine Mail gesendet....
    Guckt's euch einfach mal selber an:

    <?php
    /*Der eingespeicherte Monat, in der Datei monat.txt, wird in der Variable $monatvar gespeichert.*/
    $monatdatei=fopen("monat.txt","r+");
    $monatvar=fgets($monatdatei,2);

    /*Der eingespeicherte Besucherzählerstand, in der Datei stand.txt, wird in der Variable $besuchervar gespeichert.*/
    $besucherdatei=fopen("stand.txt","r+");
    $besuchervar=fgets($besucherdatei,100);

    $echtmonat=date("m");

    if ($besuchervar=="")
    {
    $besuchervar=0;
    }

    $besuchervar++;

    if ($monatvar=="")
    {
    $monatvar=$echtmonat;
    }

    //Das Problem liegt irgetwo hier...
    if ($monatvar!=$echtmonat)
    {

    mail ("meineMail@host.endung","Webseitenzählerstand im Monat ".$monatvar."!","Ihr Zählerstand betrug in diesem Monat: ".$besuchervar."!!!" );

    $monatvar=$echtmonat;
    $besuchervar=0;
    }
    rewind ($monatdatei);
    fwrite ($monatdatei,$monatvar);
    fclose ($monatdatei);
    rewind ($besucherdatei);
    fwrite ($besucherdatei,$besuchervar);
    fclose ($besucherdatei);
    ?>

    Hoffe es kann mir einer helfen ich hab schon alles mögliche versucht...

    MfG
    fritzil


    Edit:
    Die Textdateien für den Zählerstand und den Monat habe ich natürlich erstellt.
    Angehängte Dateien

  • #2
    bitte PHP-Tags nutzen [*PHP][*/PHP] ohne *
    - Laravel

    Kommentar


    • #3
      Das Problem ist vermutlich trivial und meiner Meinung nach solltest du es selber lösen. Du wirst immer wieder auf solche kleinen Problchem treffen und sicher nicht immer einen neuen Thread starten wollen, wenn es mal wieder so weit ist.

      Du wirst einfach Debuggen müssen. "Einfach" ist hier übrigens im eigentlichen Wortsinn gebraucht und nicht als Füllwort, denn es ist einfach. Was du mindestens mal machen kannst ist dir mit
      PHP-Code:
      die(var_dump($monatvar)) 
      den Wert der Variablen an verschiedenen Stellen (idealerweise fängst du oben an ) ausgeben lassen.

      Ich mache das jetzt selber mal eben.

      E: So fertig. Wie vermutet, der Fehler ist trivial. Und wenn du tust was ich vorgeschlagen habe siehst du praktisch sofort wo der Fehler liegt. Wenn du dann weißt wo er auftritt, kann man über das Warum nachdenken. Mich hatte der Fehler erst auch gewundert. Was habe ich als nächstes getan? Mir das Beispiel aus der PHP-Dokumentation kopiert und ausgeführt und dann klappte es. Was mich sofort den Verdacht hat hegen lassen, dass ich wohl doch nicht genau verstanden hatte, was der Befehl eigentlich tut. Nochmal genau in die Doku geschaut und siehe da, tatäschlich funktioniert er anders als ich das angenommen hatte. Nach einer winzigen Anpassung ist das Problem dann behoben.

      Kommentar

      Lädt...
      X