Seite 1 von 1

Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 21.05.2009 03:37
von achim89
Hi,
ich erstelle gerade eine liste und hier ist ein teil meines codes

Code: Alles auswählen

foreach($dsatz as $file)
  {
    if($farbe == 1)
    {
      $farbe = 2;
      echo "<tr style='$color2'>";
    }
    if($farbe == 2)
    {
      $farbe = 1;
      echo "<tr> style='$color1'>";
    }
      
    echo "    <td><center>"; fct_preview($dsatz["type"]);
    echo "        <br>".$dsatz["filename"].".".$dsatz["type"]."</center>";
    echo "    <td><center>"; fct_stamp_to_string($dsatz["time"]);
    echo "        </center></td>";
    echo "    <td><center>";
    echo          $dsatz["size"]." Kb</center></td>";
    echo "    <td><center>Link zum verschicken:";
    echo "        <br><input value='http://********/download.php?stamp=".$dsatz["user"]."&time=".$dsatz["time"]."'></td>";
    echo "    <td><center>Anzahl der Downloads:";
    echo "        <br>".$dsatz["downloads"]."</center></td>";
    echo "    <td><center><a href='delete.php?file=".$dsatz["time"]."'>";
                  fct_show_icon("delete.png");
    echo "        </center></td>";
    echo "</tr>";
  }
ich wusste nicht wie ich den farbwechsel von den zeilen realisieren sollte
deswegen hab ich das mit if abfragen gemacht
jedoch ist mein problem, dass es immer nur eine farbe bleibt
wieso versteh ich jedoch nicht
da ich in der abfrage der $farbe einen wert zuweise, die auserhalb der foreach schleife deklariert wurde

kann mir jemand helfen?

Re: Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 21.05.2009 09:48
von Dufftown
Hi,

kleiner logischer Fehler.

Das 2. if führst Du doch immer aus. :o
Gehst Du da mit farbe = 2 rein, wird nur das 2. ausgeführt und stellt die Farbe auf 1.
Gehst Du da mit farbe = 1 rein, stellt das 1. if die Farbe auf 2, dann kommt das 2. if (Bedingung ist ja jetzt erfüllt) und stellt das wieder auf 1.

Nimm für den 2. Fall ein else oder elseif.

Re: Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 21.05.2009 11:33
von achim89
vielen dank
ja das glaub ich hat um die uhrzeit nicht mehr ganz hingehauen mit der logik (>.<)

Re: Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 21.05.2009 17:31
von Boecki91
oder einen Variable die du hochzählst, und dann mit Modulo

Code: Alles auswählen

$i++
if($i%2)

Re: Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 21.05.2009 21:23
von achim89
modulo ist auch eine schöne lösung an die ich gar nicht gedacht habe
ich hoff sowas kommt mit der erfahrung^^

aber danke, funktioniert wunderschön

Re: Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 22.05.2009 01:02
von Boecki91
ob das auch geht? :o

Code: Alles auswählen

$i =0;
if((pow(-1;$i++)+1)/2)

Re: Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 22.05.2009 09:38
von oxpus
Boecki91 hat geschrieben:ob das auch geht? :o

Code: Alles auswählen

$i =0;
if((pow(-1;$i++)+1)/2)
Wohl frei nach dem Motto: Warum einfach, wenn es auch umständlich geht?!? 8)

Re: Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 22.05.2009 09:45
von Boecki91
Vielleicht gehts ja auch mit Sinus und Runden ;)

Die Welt steht uns offen :D

Re: Farbwechsel von Zeilen in Tabelle in ForEach

Verfasst: 22.05.2009 11:05
von oxpus
:lol: