Thanks for this tip, i used to use this when I programmed Perl. But I didnt know it worked here aswell, hehe.
Absolutely true that this is much better code practise, and it eases up the lines in the code. Great tip! -- Kim Steinhaug --------------------------------------------------------------- There are 10 types of people when it comes to binary numbers: those who understand them, and those who don't. --------------------------------------------------------------- "Keith Greene" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] It's so much easier to use the mod (%) operator: using the mod operator, you can check if a variable is divisible by some other number without leaving a remainder. For this example, we want to change every other row, so we would compare our $count against 2 to see if it leaves a remainder: $bg = ($count%2==0) ? "#000000" : "FF0000"; What this line does is FIRST, it checks to see if $count/2 leaves no remainder. If this is true, it sets the $bg var to "#000000" If it is false, it sets $bg to "#FF0000" It only requires the addition of one line of code, and to replace your row background color with a php variable. Also, you don't need to use printf(), since you aren't specifying any formatting. See code below: code:----------------------------------------------------------------------- ---------------- $result = mysql_query("SELECT * FROM albums where id <15"); $Count = @mysql_num_rows($result); echo "<table border=1 cellpadding=3 cellspacing=0 bordercolor='#000000'>\n"; echo "<tr><td bgcolor='#666666'>ID</td><td bgcolor='#666666'>ARTIST</td><td bgcolor='#666666'>TITLE</td><td bgcolor='#666666'>LABEL</td><td bgcolor='#666666'>PRICE</td></tr>\n"; for ($count = 0; $count < $Count; $count++) { // Extract post details from database $myrow = mysql_fetch_array($result); $id = $myrow ['id']; $artist = $myrow ['artist']; $title = $myrow ['title']; $label = $myrow ['label']; $price = $myrow ['price']; $bg = ($count%2==0) ? "#000000" : "FF0000"; echo "<tr bgcolor='".$bg."'><td>$id</td><td>$artist</td><td>$title</td><td>$label</td> <td>£$price</tr>\n"; } echo "</table>\n"; At 01:08 PM 11/15/2003, you wrote: >Well, first of all Ill just scrap you script since this one is so easy >its better to do it from scratch. > >OK, somewhere in your script you have the code that accually >aoutputs the tables you are working with. Im refferring to lines >here, and Im meaning the bottom of this document which is >the scipt you posted, and I have numbered the lines. > >Overview of your script. >Line 5 - we print out the table header >Line 11 - 23 is the loop which prints out all the lines, or rows. >Line 24 closes the table. > >So what we have to do? > >First we need to declare the values we want to use as backround >colours, lets use logical names : > >(fig a) > $backcolor1="#fafafa"; > $backcolor2="#c0c0c0"; > $backcolor=$backcolor1; // we assign color 1 > >This code has to be written before the loop starts, so somewhere >before line 11. > >In the loop (11-23) we need to switch between the colours where >we write the colour of the <tr>. So we write something like : > >(fig b) > echo '<tr style="background-color:' . $backcolor . ';">'; > // continue with the rest of <td....... </td></tr> here > // which is -> your code. > >This will print out the first background color, nice. Now we need it >to switch color, so we need to add a little logic. This will be inserted >right before the loop ends (infact, you can put it where ever you like >aslong as its in the loop). > >(fig c) > if($backcolor=backcolor1) > $backcolor=$backcolor2; > else > $backcolor=$backcolor1; > >As you see above the logic is quite simple, if the color is 1 -> we set it >to 2, >else we set it to 1. If you think of it, if you process this logic over and >over again >you will infact get 1, 2, 1, 2, 1, 2, 1, 2 all the time, :) Nice! > >There you have it, and I hope you got the hang of it. > >To take your code and implement my colorswither all you need to do is, > >1. On line 21 replace #000000 width $backcolor >2. Insert the logic (figc), all lines, into line 19 >3. Place fig a in line 4. > >-- >Kim Steinhaug >--------------------------------------------------------------- >There are 10 types of people when it comes to binary numbers: >those who understand them, and those who don't. >--------------------------------------------------------------- > > >The code for return the top ten result is : >1 $result = mysql_query("SELECT * FROM albums where id <15"); >2 >3 $Count = @mysql_num_rows($result); >4 >5 echo "<table border=1 cellpadding=3 cellspacing=0 >6 bordercolor='#000000'>\n"; >7 echo "<tr><td bgcolor='#666666'>ID</td><td >8 bgcolor='#666666'>ARTIST</td><td bgcolor='#666666'>TITLE</td><td >9 bgcolor='#666666'>LABEL</td><td bgcolor='#666666'>PRICE</td></tr>\n"; >10 >11 for ($count = 0; $count < $Count; $count++) { >12 // Extract post details from database >13 $myrow = mysql_fetch_array($result); >14 $id = $myrow ['id']; >15 $artist = $myrow ['artist']; >16 $title = $myrow ['title']; >17 $label = $myrow ['label']; >18 $price = $myrow ['price']; >19 >20 printf("<tr >21bgcolor='#000000'><td>$id</td><td>$artist</td><td>$title</td><td>$label</ t >d> >22<td>£$price</tr>\n"); >23} >24 echo "</table>\n"; > >-- >PHP General Mailing List (http://www.php.net/) >To unsubscribe, visit: http://www.php.net/unsub.php -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php