Tabellenfarbe abwechseln

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

  • Tabellenfarbe abwechseln

    Hi!

    Ich weiss, das ist ein leidiges Thema und wurde schon zig-mal behandelt - ABER ICH CHECK´S EINFACH NICHT !!! Vielleicht erbarmt sich ja jemand und hilft mir hier weiter...

    Also: Hab eine Datenbank mit Terminen und möchte, daß diese Termine mit abwechsender Table-Color ausgeworfen werden. Nicht nach ID (da einzelne Datensätze rausfallen), sondern dynamisch.

    Hier mal mein bisheriger Code (hab alle Versuche in Sachen dynamischer bg-color mal rausgenommen):

    PHP-Code:
    include("admin/dbconnect.php");
         
    $selectt "SELECT ID, DATE_FORMAT(datumv,'%d.%m.%Y') as datumv1, DATE_FORMAT(datumb,'%d.%m.%Y') as datumb1, zeit, ort, info, AID, extern";
         
    $fromt   " FROM events";
         
    $wheret  " WHERE ID>0 AND datumv>=now() AND CID=1";
         
    $orderbyt" ORDER BY datumv";
    $searcht1 mysql_query($selectt $fromt $wheret $orderbyt);
    if (!
    $searcht1) {
         
    $error="Die Verbindung zur Datenbank kann derzeit nicht hergestellt werden.";
         include(
    "message.php");
         include(
    "footer.php"); 
         exit();    }
         
        
    $result=mysql_query("SELECT COUNT(*) AS events FROM events WHERE ID>0 AND datumv>=now()");
        
    $row=mysql_fetch_array($result);
        
    $events=$row["events"];
        if(
    $events>0) { 


         
    $searchtarray = array();     
         while (
    $searcht  mysql_fetch_array ($searcht1)) $searchtarray[] = $searcht
         foreach(
    $searchtarray as $searcht)
         {

         
    $datumv = ($searcht["datumv1"]);
         
    $datumb = ($searcht["datumb1"]);
         
    $zeit = ($searcht["zeit"]);
         
    $ort = ($searcht["ort"]);
         
    $info = ($searcht["info"]);
         
    $aid= ($searcht["AID"]);
         
    $extern= ($searcht["extern"]);
    //... da folgen noch einige Abfragen - hab ich mal rausgenommen     

      
    echo("<table width='100%' cellspacing='0' cellpadding='1'><br>"); //das ist der table, der die bgcolor dynamisch ändern soll
      
    echo("<tr>");
      if (
    $name=="* externer Künstler"):
      echo(
    "<td class='eaact'>$extern</td>") ;
        else:
        echo(
    "<td class='eaact'>$name</td>");
      endif;
      echo(
    "</tr>");
      echo(
    "<tr>");
      if(
    $datumb=="00.00.0000") {
           echo(
    "<td class='eadate'>$datumv</td>");
      }else{
           echo(
    "<td class='eadate'>$datumv bis $datumb</td>");}
      echo(
    "</tr>");
      echo(
    "<tr>");
           echo(
    "<td class='eaort'>$ort</td>");
      echo(
    "</tr>\n");
           echo(
    "</table>");
    }
    } else {
      echo(
    "<table width='96%' cellspacing='0' cellpadding='3' class='content'><br>");
      echo(
    "<tr>\n");
           echo(
    "<td class='coheader'>derzeit keine Termine</td>");
      echo(
    "</tr>\n");
           echo(
    "</table>");} 

    Das Prinzip mit Restwert usw. ist mir generell klar - nur schaff ich´s nicht mal, die Datensätze dynamisch zu numerieren...
    Hoffe, mir kann da jemand helfen - ich verzweifle.

    Danke. LG, Citral

  • #2
    ganz einfach:

    zum ausgeben baust du eine while - schleife
    dann folgendes:
    PHP-Code:
       if ($i++ % 2
         
    $bgcolor="#000000";
      else
         
    $bgcolor="#ffffff"
    möchtest du keine while-schleife, mußt du den block entsprechend öfter einbauen.
    Zuletzt geändert von kill_bill; 26.02.2004, 10:06.
    (-:
    Bookmarks:·Bilder·Jobs·Recht·
    kostenloser Webkataloge-Assistent

    Kommentar


    • #3
      WOW - das ist alles ?!?!?!

      Ich dachte immer, ich muß $i auch irgendwie in meiner Abfrage definieren...

      Danke - du hast mir wirklich sehr geholfen!

      LG, Citral

      Kommentar


      • #4
        Original geschrieben von Citral666
        Ich dachte immer, ich muß $i auch irgendwie in meiner Abfrage definieren...
        was denkst du macht $i++ ?
        mfg,
        [color=#0080c0]Coragon[/color]

        Kommentar


        • #5
          Ja, nur ich dachte an den "klassischen" Weg $i=$variable("")...

          Hab mich schon ein wenig mit der Funktion gespielt - ist super-vielseitig einsetzbar... Jaja, man lernt nie aus...

          Danke für eure freundliche Unterstützung.

          LG, Citral

          Kommentar


          • #6
            kill_bill hat dir ja schon geholfen.. aber du meintest am anfang sicher sowas: ?

            PHP-Code:

            <?
            $wechsel=1;


            { # ... irgend ein schleifenbeginn mit ner abfrage der datenbank ... #


            ### Farbe festlegen ###
                      if ( $wechsel==1 ) { $farbe=$tbgfarbe; }
                      if ( $wechsel==3 ) { $farbe=$tbgfarbe1; $wechsel = 2; }


            echo "<tr bgcolor=$farbe>"; # ( oder in table oder td )

            ## Farbenwechsel veranlassen ##
                      if ( $wechsel==1 ) { $wechsel = 3; }
                      if ( $wechsel==2 ) { $wechsel = 1; }

            } # irgend ein schleifenbeginn von db ende.. 

            ?>
            aber wie du siehsch, isch des von kill_bill einfacher

            PS: $tbgfarbe1 und $tgbfarbe muss man halt no festlegen...
            Zuletzt geändert von xManUx; 26.02.2004, 13:00.

            Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
            sondern mit den Augen das Manual zu lesen.

            Kommentar

            Lädt...
            X