webForumDet fria alternativet

Varannan rad bg?

2 svar · 300 visningar · startad av SoulGod

SoulGodMedlem sedan aug. 20051 200 inlägg
#1

Bygger en sida i php, och hoppas man kan lösa detta via phpkod.

Jag vill läsa in flera rader ur en databas,
och vill att varannan rad skall ha bakrund #FFF, och varannan #000 ...

Någon som vet hur jag gör detta?
Jag läser in raderna såhär:

<table width="260px" cellpadding="2" cellspacing="0">
<?
$query_gig = "SELECT * FROM gig";
$gig = mysql_query($query_gig) or die(mysql_error());
$totalRows_gig = mysql_num_rows($gig);
while($row_gig = mysql_fetch_assoc($gig)) { 
?>     
<tr height="15px" class="bg_gig"> 
    <td width="60px"><h3><? echo $row_gig['date']; ?></h3></td>
    <td><h3><? echo $row_gig['band']; ?></h3></td>
    <td><h3><? echo $row_gig['stad']; ?></h3></td>
    <td><h3><? echo $row_gig['arena']; ?></h3></td>
</tr>   	   	
<?  } ?>
</table>
drewMedlem sedan mars 2007845 inlägg
#2

Sätt $cnt = 0; innan du börjar loopa inne i loopen sätter du
Sen använder du

$bg = ($cnt % 2 == 0) ? '#FFF' : '#000';
$cnt++;

för att ha olika bakgrunder.

Att ha $cnt++ inne i if-satsen borde fungera, men ger ibland felaktigt resultat har jag upptäckt.

PeddaMedlem sedan juni 20006 032 inlägg
#3
<table width="260px" cellpadding="2" cellspacing="0">
<?
$query_gig = "SELECT * FROM gig";
$gig = mysql_query($query_gig) or die(mysql_error());
$totalRows_gig = mysql_num_rows($gig);
$bg = ''; 
while($row_gig = mysql_fetch_assoc($gig)) { 
$bg = $bg != '#fff' ? '#fff' : '#000';  
echo '<tr height="15px" style="background-color:'.$bg.'">';
?> 
    <td width="60px"><h3><? echo $row_gig['date']; ?></h3></td>
    <td><h3><? echo $row_gig['band']; ?></h3></td>
    <td><h3><? echo $row_gig['stad']; ?></h3></td>
    <td><h3><? echo $row_gig['arena']; ?></h3></td>
</tr>   	   	
<?  } ?>
</table>
129 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)