Re: was ist los? - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Claus (4645 Beiträge) am Dienstag, 21.Dezember.2004, 14:55.
    Re: was ist los?

      Hi,

      Habe mich schon gewundert. Konnte zwischen den Templateaufrufen schon das Mittagessen zubereiten.;-)

      Claus


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von mk (966 Beiträge) am Dienstag, 21.Dezember.2004, 13:18.
    was ist los?

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Dienstag, 21.Dezember.2004, 14:24.
    Re: was ist los?

      Kein Wunder, Du hast eine klassische Endlosschleife gebaut. Ich bin so frei die Schleife hier mal zu posten (ist wirklich lehrreich, ich hoffe andere passen auch auf ;-) ):

      for($i=0; $i<7;)
      {
        do
        {
            get "Id==? Datum>-14", "datenbank";
        } while (index($ids, "$_id,")>=0);
        out "...";
        $ids.="$_id,";
        $i++;
      }
      

      Was passiert, wenn in den letzten 14 Tagen nicht genügend Neues in die Datenbank eingetragen wurde? Richtig: Er findet keine 7 Datenätze, wie gewünscht, sondern immer wieder dieselben, die dann alle in $ids drinstehen, folglich wird die do...while-Schleife nie verlassen... Böse Server-Belastung!

      Aus dem Grund ging das auch ne Weile und dann -gerade eben ohne Änderung- plötzlich nicht mehr...

      So, was Du eigentlich willst, ist:

      get "Datum>-14 sort=? range=0,7", "datenbank";
      while(get_next "datenbank");
      {
        out "...";
      }
      

      Das ist schneller, weil Du die Datenbank das Holen der richtigen Datensätze machen lässt und es kann nichts schiefgehen, weil keine potentielle Endlosschleife drin ist. Und kürzer und schöner ist es auch ;-)

      Du hast das an einigen Stellen in Deiner Seite, vielleicht auch noch in anderen Seiten, bitte schau das mal durch!!


      PRINZIPIELL (für alle was zum Lernen ;-) ):

      Bei Schleifen die keine 100% eindeutige Abbruchbedingung haben, IMMER einen Zähler mitlaufen lassen, der dann zur Not stoppt... Bei obigen Beispiel, wäre das:

      do
      {
        get "Id==? Datum>-14", "datenbank";
      } while (index($ids, "$_id,")>=0 && $stop_cnt++<10);
      

      (Bzw. gleich ne for-Schleife, bzw. natürlich in dem Fall sowieso die obige Lösung)

      Hoffe, es hilft ein bisschen was ;-)

     Antworten

    Beitrag von mk (966 Beiträge) am Dienstag, 21.Dezember.2004, 14:49.
    Re: was ist los?

      nenne die Seite bitte um, ich komme nicht ran.
      Da blokiert einer den Server ha ha

     Antworten

    Beitrag von Claus (4645 Beiträge) am Dienstag, 21.Dezember.2004, 14:55.
    Re: was ist los?

      Hi,

      Habe mich schon gewundert. Konnte zwischen den Templateaufrufen schon das Mittagessen zubereiten.;-)

      Claus

     Antworten

    Beitrag von mk (966 Beiträge) am Dienstag, 21.Dezember.2004, 20:15.
    Re: was ist los?

      Entschuldigung an alle,
      Claus was gab es zu Mittag?

      @cb deine Lösung hatte ich schon immer gesucht, das mit den 14 Tagen ist natürlich logisch, und war ein Zeitzünder.
      
      Das man so Datensätze in zufälliger Reihenfolge ausgeben kann wußte ich noch nicht. Aber ich weis so viel noch nicht.

      Michael

     Antworten

    Beitrag von Claus (4645 Beiträge) am Dienstag, 21.Dezember.2004, 20:31. WWW: automobilhai.de
    Re: was ist los?


      Hallo Michael,

      ist dem Einen oder Anderen sicher auch schon passiert, daß er den Server zum krepieren gekriegt hat. Man hat dann aber unterschwellig immer das Gefühl, selbst daran Schuld gewesen zu sein. Schließlich experimentiert Jeder mal.
      Gab übrigens Steak.;-)

      Mit dem "nicht soviel wissen" bist Du bestimmt nicht allein. Der Einzige, der alles weiß ist Christoph.

      Gruß

      Claus

     Antworten

    Beitrag von mk (966 Beiträge) am Dienstag, 21.Dezember.2004, 21:07.
    Re: was ist los?

      aber einen Zeitzüder kann nicht jeder bauen und dann fragen was los ist.

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 22.Dezember.2004, 11:15.
    Re: was ist los?

      > Der Einzige, der alles weiß ist Christoph.
      

      Nee, das is, wenn dann Andreas Jurenda ;-)

     Antworten


     
 Liste der Einträge von 26251 bis 26401:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.06s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!