schleife

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

  • schleife

    Hallo,
    ich habe folgendes Problem.
    Ich will einen kalender mit php erstellen welcher einträge in einer datenbank mysql aufruft. nun habe ich das problem das mir das kalenderblatt so oft angezeigt wird wie einträge in der db vorhanden sind. ich kann die schleife für den kalender nicht mit der schleife für die db unter einen hut bekommen.

    start ist mein datumswert.
    caldat mein datum in der db.

    else if ($start==$calda) {
    echo "<td width=\"20\" bgcolor=\"$heute\" align=\"center\"><a href=\"$timecode\">$tagnummer</a></td><td width=\"70\">$start<br>$calda<br>$caltext</td>"; $tag++;
    }

    Kann jemand helfen?
    bin anfänger
    gruss frank

  • #2
    ja. tu das hier in deine Schleife:

    PHP-Code:
    // Bei der Ausgabe des Kalenderblattes
    if(!$temp)
    {
       
    // ausgabe
    }
    //ans ende der schleife
    $temp true

    Kommentar


    • #3
      bitte [PHP]-Tags benutzen!

      Kommentar


      • #4
        tags

        muss ich mich mal schlau machen.
        wo?

        danke

        Kommentar


        • #5
          schleifen: Manual
          PHP-Tags: Forum einfach mit [PHP] einleiten und entsprechend mit [/ PHP] (ohne leertaste) beenden.

          Kommentar


          • #6
            hallo,
            also bisher kann ich leider mit den ratschlägen nichts anfangen, legt aber wohl an mir da anfänger.
            hier nochmal mein problem:
            ich habe eine while schleife für meine db abfrage.

            eine weitere for/ else /elseif schleife für meinen kalender.

            alleine für sich funktionieren beide.

            arbeiten sie nacheinander bekomme ich nur das erste result aus meiner db da meine schleife ja schon eher beendet wird. wie kann ich diese in einer schleife durchlaufen lassen?

            DB:
            while ($row = mysql_fetch_array($result))
            {
            $y = $row[y];
            $m = $row[m];
            $t = $row[t];
            $caltext = $row[4];
            $caldas = ($row[1].$row[2].$row[3]);

            $cald = array("$caldas");
            foreach($cald as $calda) {
            echo $calda;
            }

            for($y=1;$y<($monat_tage[$monat]+$beginn);$y++) {
            if($y<$beginn) {
            echo "<td width=\"20\" bgcolor=\"$bgcolor\" align=\"center\">&nbsp;</td> <td width=\"70\"></td> ";
            }
            // Ist es der heutige tag
            else if($tagnummer==$tag && $monat==$dieser_monat && $jahr==$dieses_jahr) {
            echo "<td width=\"20\" bgcolor=\"$heute\" align=\"center\"><a href=\"$start\">$tagnummer</a></td><td width=\"70\"><br></td>"; //$tagnummer++;
            }
            //alle anderen tage wo
            else if ($start==$calda) {
            echo "<td width=\"20\" bgcolor=\"$heute\" align=\"center\"><a href=\"$timecode\">$tagnummer</a></td><td width=\"70\">$start<br>$calda<br>$caltext</td>"; $tag++; $calda[1];
            }
            else {
            echo "<td width=\"20\" bgcolor=\"$bgcolor\" align=\"center\"><a href=\"$timecode\">$tagnummer</a></td><td width=\"70\">$start<br>$calda<br></td>"; $tag++; $tagnummer++; // $calda++;
            }

            vielen dank
            frank

            Kommentar


            • #7
              Da sich die Schleife auf die erste Abfrage konzentriert, bekommst Du auch
              nur Datensätze, solange in der while Schleife Daten gefunden wurden, egal ob unten noch andere Schelifen sind.

              Gruß
              Arni
              Bei Risiken und Nebenwirkungen fragen Sie Dr.Alban

              Kommentar


              • #8
                ja, das weiß ich auch.
                das funktioniert ja auch.

                ich muss nur die schleifen irgendwie zusammen bringe.

                frank

                Kommentar


                • #9
                  nimmt dir Zeit und befolge den Link hinter der grünen Schrift in meiner Signatur.

                  Kommentar


                  • #10
                    danke für den tipp. den unterschied zwischen while und for kenne ich.
                    wenn ich meine for schleife innerhalb der while ausführe bekomme ich nur für jeden datensatz in der db eine html-tabelle.

                    dies sollte aber in einer sein.

                    na ja, ich werd schon noch dahinter kommen.
                    frank

                    Kommentar


                    • #11
                      !!! PHP-Code bitte in [PHP]-Tags.

                      Kommentar

                      Lädt...
                      X