[SQL allgemein] Bannerviews Gestern und Heute

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

  • [SQL allgemein] Bannerviews Gestern und Heute

    Hallo Ihr lieben...

    nicht das ich Gestern ein kleines Problem hatte, das mir jemand sehr professionell gelöst hat, nein... nun kommt noch ein weiteres hinzu...

    Denn meine Frage ist die..:
    Ich möchte die views von Heute zählen lassen (funzt auch!)
    Wenn nun aber "Morgen" ist, sollen die Views von "Gestern" in die Spalte "Gestern" verschoben werden (funzt auch...), aber die views, die nun von wiederum heute stammen soll er wieder neu zählen... das aber klappt nicht so wie ichs gern hätte...

    Vielleicht habe ich ja nur mal wieder nen Denkfehler...

    Hat da jemand einen Rat? Würde mich freuen, wenn mir da jemand aus der Patsche helfen kann.


    hier mal der Code->

    // UNIX Zeitstempel erstellen
    $time = time();
    //Datum für für den nächsten Tag
    $timestamp = $time + 86400;
    $date_1day_later = date("d M Y", $timestamp);
    //Datum für diesen Tag ermitteln
    $today = date("d M Y");

    //views ermitteln und hochzählen!
    $views = $views +1;

    $query="UPDATE bannerviews SET views ='$views', today='$today' WHERE pkdnr = '$pkdnr' ";
    $res = mysql_query($query) ;

    if ($today == "$date_1day_later")
    {
    $sqlstring2="select * from bannerviews WHERE pkdnr = '$pkdnr' ";
    $ergebnis2=mysql_db_query("datenbank",$sqlstring2);
    $views=@mysql_result($ergebnis2,0,"views");
    $views_old = 0;
    $query="UPDATE bannerviews SET views_yesterday ='$views', views = '$views_old' WHERE pkdnr = '$pkdnr' ";
    $res = mysql_query($query) ;
    }
    lg, ldkhosting

    http://www.ldk-hosting.de

  • #2
    Also mein erster Tipp wäre:
    -Mach mal das @ weg
    -Schreibe hinter jede mysql_query() OR die (mysql_error())
    Und das kannst du auch einfacher haben
    PHP-Code:
    //Datum für für den nächsten Tag
    $date_1day_later date("d M Y"strtotime('+ 1 day'); 
    Spart gleich zwei Vars, die du nirgends zu brauchen scheinst

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      @ jahlives

      Hey vielen Dank für die schnelle Antwort..

      werde mal drüber nachdenken, dass dann umzuschreiben... aber primär ist eben das Problem mit den Views im Vordergrund.

      ich weiss leider nicht, ob sich durch deinen Tipp das Prob. erledigt hat?!
      lg, ldkhosting

      http://www.ldk-hosting.de

      Kommentar


      • #4
        ich weiss leider nicht, ob sich durch deinen Tipp das Prob. erledigt hat?!
        Wenn das mit dem die(mysql_error()) keine Fehler gebracht hat, dann hat's sich noch nicht erledigt...
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          Original geschrieben von jahlives
          Wenn das mit dem die(mysql_error()) keine Fehler gebracht hat, dann hat's sich noch nicht erledigt...
          Nochmal Hallo jahlives....

          nun, dieser Code (nur ein teil) stammt aus einer Datei, die als .png gespeichert, aber durch .htaccess als php behandelt wird. Leider würde mir daher ein "die" nichts bringen, genauso wenig wie ne andere Funktion für ne Fehlermeldung, da diese nicht angezeigt werden.

          Es geht ja auch schlichtweg darum, dass nur die Berechnung durchgeführt werden muss und ich glaube da einen Fehler zu haben. Leider bin ich selber noch nicht darauf gekommen, zumal ich noch andere Variationen getestet habe... "Aufm Schlauch steh"

          Daher hat sich das wirklich nicht erledigt...

          PS: Übrigens... hast du in deiner Funktion $date_1day_later = date("d M Y", strtotime("+ 1 day");

          ne Klammer vergessen... ...
          so wäre korrekt: $date_1day_later = date("d M Y", strtotime("+ 1 day"));
          Zuletzt geändert von ldkhosting; 02.10.2007, 06:26.
          lg, ldkhosting

          http://www.ldk-hosting.de

          Kommentar


          • #6
            OffTopic:
            Nur aus reiner neugierde, warum als png? Is des ein Überraschungsscript?

            Kommentar


            • #7
              Kommentiere die Ausgaben des PNG-Inhaltes aus und ruf die Datei direkt im Browser auf, dann solltest du Fehlermeldungen sehen!

              Kommentar


              • #8
                @alle

                Hallo Ihr lieben...

                nun, zum einen ist das kein "Überraschungsscript", da es nur zum zählen der Bannerviews benutzt wird. Zum anderen gibt es keinen Fehler. Warum auch, habe ja bis jetzt versucht zu verdeutlichen, dass soweit alles funktioniert.

                Nur eben eins nicht..:

                wenn die views von "gestern" in die Spalte geschrieben wurden, wird der zähler von den views "heute" auf null gesetzt. Aber er soll dann die views von heute auch wieder hochzählen und das tut er nicht, da ich etwas mit dem code falsch gemacht habe.

                Funktionieren tuts ja, nur eben das hochzählen nicht wenn der Zähler auf null gesetzt wurde.
                lg, ldkhosting

                http://www.ldk-hosting.de

                Kommentar


                • #9
                  Leider würde mir daher ein "die" nichts bringen, genauso wenig wie ne andere Funktion für ne Fehlermeldung, da diese nicht angezeigt werden.
                  Wenn du die korrekten Header schickst und das Bildgedüngs mal auskommentierst, dann werden Fehlermeldungen sehr wohl angezeigt.
                  Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                  [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                  Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                  Kommentar


                  • #10
                    @jahlives

                    Großes SOOOORYYYY! habe ausversehen auf "Neues Thema" anstelle auf Antworten geklickt... Daher 2 mal dieser Beitrag!

                    Hi jahlives,

                    ich verstehe leider nicht, warum du so sehr auf ne Fehlermeldung ausbist?!

                    Es gibt keine!!!!

                    Es geht nur (nun zum 4 Male!) darum, dass ich die views, die durch eine Variable auf 0 gesetzt werden wieder hochzählen lassen will. Das funktioniert nicht, weil ich es nicht schaffe das so zu proggen, wie es sich gehört.

                    das System an sich funktioniert wunderbar!
                    Nur ist der Code, der zum Updaten der Datenbank für die views_yesterday zuständig ist nicht korrekt, da ich da was vergessen habe, oder der komplett im Set falsch ist.

                    Ich weiss nun leider nicht mehr, was ich noch alles schreiben muss um zu verdeutlichen, dass kein SQL Fehler besteht, sondern nur ein von mir erzeugter Fehler in meinem Code ist, der den zähler der views nicht mehr aktiviert. Bei der SQL Sache ist alles OK!!!!
                    lg, ldkhosting

                    http://www.ldk-hosting.de

                    Kommentar

                    Lädt...
                    X