webForumDet fria alternativet

Loopa ut varannan färg

PHP

7 svar · 285 visningar · startad av jiggan

Medlem sedan juni 2003175 inlägg
Frågan#1

Då var man här igen :)
Jag håller på med ett litet forum och tycker att det vore kul att loopa ut varannan tabellcell i en annan färg. Jag har funderat lite om man skulle kunna lösa det med alla id i databasen som är delbara med 2 ska skrivas ut i svart tabellcell osv. Någon som vet om och iså fall hur jag kan göra detta?

Medlem sedan aug. 20002 975 inlägg
#2

När du loopar dina inlägg:

$bgcolor = '';
while ($row = mysql_fetch_assoc($result)) {

   $bgcolor = $bgcolor == '#FF0000' ? '#00FF00' : '#FF0000';

   echo '
     <tr style="background-color:'.$bgcolor.'">
     <td>Inlägg</td>
     </tr>
   ';

}
Medlem sedan juni 2003175 inlägg
#3

Funkar inte när jag gör så här:
while ( $rad = mysql_fetch_assoc ($resultat) )
{
$bgcolor = '';
$bgcolor = $bgcolor == '#FF0000' ? '#00FF00' : '#FF0000';
echo
"<td bgcolor=<?php echo $bgcolor;?> width=80% height=150 valign=top align=left>"
}
Det blir bara röda celler

Medlem sedan aug. 20002 975 inlägg
#4

Testa:

$bgcolor = '';
while ( $rad = mysql_fetch_assoc ($resultat) )
{
   $bgcolor = $bgcolor == '#FF0000' ? '#00FF00' : '#FF0000';
   echo "<td style=\"background-color:$bgcolor\" width=80% height=150 valign=top align=left>";
}
Medlem sedan mars 20034 471 inlägg
#5

jiggan skrev:

Funkar inte när jag gör så här:
while ( $rad = mysql_fetch_assoc ($resultat) )
{
$bgcolor = '';
$bgcolor = $bgcolor == '#FF0000' ? '#00FF00' : '#FF0000';
echo
"<td bgcolor=<?php echo $bgcolor;?> width=80% height=150 valign=top align=left>"
}
Det blir bara röda celler

Du kan ju inte öppna en php-tagg mitt i PHP! Du är ju redan i php-mode när du kommer till det jag ändrade färg på. Pröva med:
....td bgcolor=$bgcolor width...
istället.

Medlem sedan juni 2003175 inlägg
#6

Kopierade inte min kod, bara skrev av fel :)

Medlem sedan juni 2003175 inlägg
#7

Nu funkade det klockrent, tack för hjälpen!

Medlem sedan sep. 2000438 inlägg
#8

unset( $class );
$i=1;
$class[] = "classone";
$class[] = "classtwo";

foreach($topics as $value) {
echo "<tr><td class=\"".".$class[$i%2]."."\">hej</td></tr>
$i++;
}

så gör jag

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)