Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Schleifen kombinieren

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Schleifen kombinieren

    Hallo, ich habe ein kleines Problem. Ich habe ein SQL-Query der mittels einer foreach Schleife ausgelesen wird. Ausgegeben wird, das Datum, Überschrift und gekürzter Inhalt einer Meldung.

    Nun möchte ich, das die ersten 3 Meldungen den vollen Datensatz ausgeben. Die nächsten 2 sollten jedoch einen gekürzten Datensatz ausgeben, aber eben nachfolgend nach den ersten 3.

    PHP-Code:
    foreach ($h->vars['pagedResults']->items as $post) {

    echo 
    "inhalt1";

    }

    foreach (
    $h->vars['pagedResults']->items as $post) {

    echo 
    "inhalt2";


    Die Struktur habe ich mir so überlegt...nur weiß ich eben nicht wie ich die zweite Schleife dazu bewege, den nachfolgenden SQL-Query nach den ersten 3 Punkten auszulesen. Hätte jemand für mich bitte einen tipp?

    Vielen Dank im voraus.

  • #2
    Ganz einfach: Benutze kein foreach. Das "each" in foreach kannst Du ja mal übersetzen.

    Kommentar


    • #3
      sry nikosch kann dir iwie nicht wirklich folgen.
      oder - die erste schleife soll eine for schleife werden, die zweite foreach? oder wie meinst du das?

      Kommentar


      • #4
        Sorry zurück, aber nachdenken musst Du als Programmierer halt auch.

        Kommentar


        • #5
          hmm, danke. mal eben nen notizblock raus holen, und die gedanken mal skizzieren. kann um die uhrzeit nicht um die ecke denken

          Kommentar


          • #6
            Dann mach doch morgen weiter.

            Kommentar


            • #7
              Habe mich mit Kaffee voll gepumpt...und im TV rennt nichts. Wollte etwas Arbeit von Morgen erledigen, befinde mich aber wohl in einer Endlosschleife im Moment.

              Kommentar


              • #8
                komm nikosch, gib dir einen ruck heute mal nett zu sein

                ich sitze hier noch nem mehrdimensionalen array den ich iwie entwirren muss - das array erscheint mir im moment jedoch einfacher, als die blöde schleife.

                Kommentar


                • #9
                  Ist items denn ein 0-indiziertes Array (fortlaufend numerisch)? In dem Fall brauchst du nur eine 08/15 for-Schleife, bzw. eben zwei hintereinander. Andernfalls: Kommt drauf an.

                  Kommentar


                  • #10
                    Jup ist es @fab. Erst definiere ich wieviele items es sind, in diesem fall 5. daher eben die ersten 3 - mit fetter überchrift, die nächsten 2 mit kursiver überschrift.

                    Kommentar


                    • #11
                      Wenn das schon der Unterschied ist*, kannst du es besser in einer einzigen for-Schleife abhandeln: Iteriere über die ersten fünf items, dabei:
                      PHP-Code:
                      $tag $i 'b' 'i';
                      printf('<%s>%s</%s>'$tag$items[$i], $tag); 
                      *) Vorhin ging es doch noch um Kürzung des Text? Naja, auch das lässt sich analog behandeln...

                      Kommentar


                      • #12
                        nene, keine kürzung des textes..es war nur ein beispiel zur besseren vorstellung...hier villeicht etwas besser formatiert:

                        die ersten 3 items
                        ITEM XYZ
                        ITEM XYZ
                        ITEM XYZ


                        die nächsten 2 items
                        ITEM XYZ
                        ITEM XYZ


                        achte auf die zeichnformatierung.

                        PHP-Code:
                         for  ($i=0$i count($h->vars['pagedResults']->items); $i++) { 
                        dies wäre die erste schleife, nur rennt die eben komplett durch und gibt alle 5 items aus. dabei sollte sie nur die ersten 3 ausgeben, danach die nächsten 2 - aus den insgesammt 5 verfügbaren. ich hoffe dies war nun etwas verständlicher

                        Kommentar


                        • #13
                          Ach passt: kombiniere nikosch + fab`s eselsbrücke = passt.

                          danke für die hilfe jungs

                          Kommentar


                          • #14
                            Warum dann eigentlich nicht per CSS? Eine Anregung

                            Kommentar


                            • #15
                              Danke für den Link, das Beispiel mit der Schriftformatierung war nur ein Symbolbeispiel. Jedes Item in meinem Fall, hat mehrere Objekte die anders dargestellt werden müssen. Daher war mir die strikte Trennung wichtig. Dennoch vielen Dank für deine Mühe.

                              Kommentar

                              Lädt...
                              X