Asday Posted July 20, 2007 Share Posted July 20, 2007 This code: <?php $j=0; function shade($mode) { if ($mode == 0) { echo '</tr><tr style="background-color:#DDDDDD">'; $j = 1; } else { echo '</tr><tr>'; $j = 0; } } $i=0; foreach(scandir("upld194") as $x) { if ($i == "2") { shade($j); //echo '</tr><tr>'; echo '<td><a href="upld194/' . $x . '">' . '<img src="upld194/' . $x . '">' . '</a></td>'; $i = 0; } else { echo '<td><a href="upld194/' . $x . '">' . '<img src="upld194/' . $x . '">' . '</a></td>'; $i++; } } ?> which is meant to shade every other row in grey, shades every row but the first grey. Why? Link to comment https://forums.phpfreaks.com/topic/60931-zebra/ Share on other sites More sharing options...
sasa Posted July 20, 2007 Share Posted July 20, 2007 try function shade(&$mode) { if ($mode == 0) { echo '</tr><tr style="background-color:#DDDDDD">'; $mode = 1; } else { echo '</tr><tr>'; $mode = 0; } } Link to comment https://forums.phpfreaks.com/topic/60931-zebra/#findComment-303239 Share on other sites More sharing options...
ToonMariner Posted July 20, 2007 Share Posted July 20, 2007 needs to be the other way around <?php $j=0; function shade($mode) { if ($mode == 1) { echo '</tr><tr style="background-color:#DDDDDD">'; $j = 0; } else { echo '</tr><tr>'; $j = 1; } } Link to comment https://forums.phpfreaks.com/topic/60931-zebra/#findComment-303248 Share on other sites More sharing options...
socratesone Posted July 20, 2007 Share Posted July 20, 2007 Is there a reason why you need to separate it into another function? Wouldn't this be easier? foreach(scandir("upld194") as $x){ if($altRow==0){ echo '</tr><tr style="background-color:#DDDDDD">'; $altRow=1; }else{ echo '</tr><tr>'; $altRow=0; } echo "<td><a href="upld194/' . $x . '">' . '<img src="upld194/' . $x . '">' . '</a></td>"; } Link to comment https://forums.phpfreaks.com/topic/60931-zebra/#findComment-303267 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.