Probleme mit UNIX-Timestamp-Berechnungen!

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

  • Probleme mit UNIX-Timestamp-Berechnungen!

    Hi,

    ich habe mir einen kleinen Counter erstellt. Nun bin ich vor folgendem Problem.
    Ich möchte, dass mir der Schnitt der User, die am Tag meine Seite besuchen, ausgegeben wird. Erst nach langem Nachdenken bin ich auf den UNIX-Timestamp gekommen... ALSO:
    Ich habe eine Tabelle "install" mit einem id-Feld (Eigentlich überflüssig, aber egal ) und halt einem "zeitstempel"-Feld angelegt. Die User werden in einer anderen Tabelle gespeichert, was aber nicht von Bedeutung ist.

    Hier mal der Code:
    PHP-Code:
    $fetch1 mysql_query("SELECT * FROM install WHERE id = 1");
    $ds mysql_fetch_object($fetch1);
    $zeitstempel $ds -> zeitstempel;
    $jetzt time();
    $zeitstempel $jetzt $zeitstempel;
    $erg 3600 24;
    $zeitstempel $zeitstempel $erg;
    $zeitstempel round($zeitstempel);
    $bSchnitt $b $zeitstempel;
    echo 
    "Das sind im Schnitt <b>".round($bSchnitt3)."</b> Besucher <b>pro Tag</b>."
    In $b werden die Gesamtuser gespeichert. Aber jetzt wird mir sowas ausgegeben:
    24 Besucher gesamt.
    12 Besucher heute
    12 Besucher gestern
    Das sind im Schnitt 24 Besucher pro Tag.
    Also... er berechnet nicht wirklich den Schnitt^^

    Gruß
    icecream
    P.S.: Ich hoffe ihr könnt mir helfen
    icedcream.de Webdesign Regensburg

  • #2
    Schau dir mal AVG an. Du kannst dir das gescripte in PHP sparen indem du direkt im Query den durchschnittswert errechnest...
    gruss Chris

    [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

    Kommentar


    • #3
      Moin,

      Du könntest auch einfach das Datum speichern (Feldformat date in DB) und dann die Einträge zählen wo das gespeicherte Datum gleich dem aktuellen Datum ist...

      Gruß Thomas

      Kommentar


      • #4
        Hm... das wird viel komplizierter, weil ich für jeden Besuch einen Eintrag mache. Also ich habe 3 Spalten:
        id, ip und datum

        Und bei der Berechnung muss ja auch das Datum berücksichtigt werden. Nebenbei bemerkt ist "datum" vom Typ "date".

        Außerdem WILL ich wissen, was daran nicht stimmt.
        @ Alrik: Damit hätte ich die Besucher von Heute und das tu ich auch ^^, aber das ist nicht der Schnitt

        Gruß
        icecream
        icedcream.de Webdesign Regensburg

        Kommentar


        • #5
          Wo ist denn dein Problem? Von der Logik her ist es doch ziemlich simpel...
          Prüfe wie viele unterschiedliche Tage es gibt, addiere die Anzahl dieser Tage und schon kannst du den durchschnitt berechnen.

          Kommentar


          • #6
            Ja, hätte ich auch gedacht... Es MUSS doch mit dem Timestamp gehen.
            Und mit meiner Tabellenstruktur wäre eine andere Art ziemlich kompliziert und umständlich...

            Gruß
            icecream
            icedcream.de Webdesign Regensburg

            Kommentar


            • #7
              Versteh ich nich was ist denn an AVG so kompliziert wenn du einen timestamp in deiner tabelle hast?

              Vielleicht suchst du mal nach FROM_UNIXTIME, GROUP, AVG .. Das geht wie gesagt direkt in SQL ohne PHP..

              EDIT:

              äh..

              Wie willst du eigentlich aus EINEM datensatz einen Schnitt errechnen?

              gruss Chris

              [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

              Kommentar


              • #8
                Es gibt einen Datensatz "zeitstempel" in einer Tabelle "install".

                Die übrigen Sachen für die Anzahl der Besucher werden in der Tabelle "counter" mit den Feldern "id", "ip" und "datum"!!!

                Wenn ich den UNIX-Timestamp in Tage umgerechnet habe, muss ich ein fach das berechnen -----> UserGesamt / TageSeitInstallation

                Und dann habe ich die durchschnittlichen Besucher pro TAG!!!
                Nur anscheinend liegt ein Fehler beim Runden oder Berechnen der Tag vor, denn er schreibt:

                25 Besucher gesamt.
                13 Besucher heute
                12 Besucher gestern
                Das sind im Schnitt 25 Besucher pro Tag.
                Gruß
                icecream
                icedcream.de Webdesign Regensburg

                Kommentar


                • #9
                  OK, ich habe es schon gelöst... trotzdem danke!
                  icedcream.de Webdesign Regensburg

                  Kommentar


                  • #10
                    PHP-Code:
                    $fetch1 mysql_query("SELECT * FROM install WHERE id = 1");
                    $ds mysql_fetch_object($fetch1);
                    $zeitstempel $ds -> zeitstempel
                    Das ergibt nur den ersten Datensatz deiner Tabelle....Informiere dich mal über while()......
                    gruss Chris

                    [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

                    Kommentar

                    Lädt...
                    X