Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #8680

Re: change of color on a field value basis in a table...

From bill <william@TechServSys.com>
Newsgroups comp.lang.php
Subject Re: change of color on a field value basis in a table...
Date 2013-03-16 10:34 -0400
Organization Aioe.org NNTP Server
Message-ID <ki1vu1$a1g$3@speranza.aioe.org> (permalink)
References <6dc42f7d-353e-4ac8-8821-b342bd74e3e1@googlegroups.com>

Show all headers | View raw


On 3/16/2013 9:16 AM, nag wrote:
> Hi,
> I am a newbie to php. Here I am trying to print the table
  rows with different colors based on a value of a field.
But it is displaying the very first record in different
color and next is the other color until the date field changes.
>
> suppose:
>
> id  dt
> xyz 05   (this is in #a99999 color)
> abc 05   (this is in #ffffff color)
> 123 05   (this is in #ffffff color)
> 324 06   (this is in #a99999 color)
> ccc 06   (this is in #ffffff color)
>
>
> but i need first three (with 05 date) in same color and next
records in other color alternatively.
>
> the following is my code:
>
>
> if($tmp!=$dt){$color="#a99999"; $tmp=$dt;}else{$color="#ffffff";}
>
> while($row = mysql_fetch_array( $result )) {
>      $id=$row[1];
>
>      $dt=substr($row[5],5,2);
>
>      // Print out the contents of each row into a table
>
>      $slno++;
>      $tmp=$dt;
>
>      if($tmp!=$dt){$color="#a99999"; $tmp=$dt;}else{$color="#ffffff";}
>
>      echo "<tr bgcolor='$color'><td align='right'>";
>      echo $slno;
>      echo "</td><td><b>";
>      echo $row[0];
>      echo "</td><td align='center'>";
>       ?>
>       <a href="profile.php?id=<?php echo $idnum; ?>"><?php echo $idnum;?>
>       </a>
>       <?PHP
>      echo "</td><td>";
>      echo sprintf("%07d",$row[2]);
>      echo "</td><td align='center'>";
>      echo $row[3];
>      echo "</td><td align='center'><b>";
>      echo $row[4];
>      echo "</td><td align='center'>";
>      echo $row[5];
>      echo "</td><tr>";
> }
> echo "</table>";
>
> thank you.
>

modestly confused: if I read what you wrote it seems you want
the 05 records to be #a99999 and
all other records to alternate between #fff and some other (as
yet unspecified) color ?

however:
  $dt=substr($row[5],5,2);

// Print out the contents of each row into a table

    $slno++;
    $tmp=$dt; <<< this insures that $tmp will always = $dt

    if($tmp!=$dt) {	<<< so this will never be true
		$color="#a99999";
		$tmp=$dt;
		}
     else {   <<< BTW, the brackets are not needed if it is a
                 single statement, but they are not wrong either
	$color="#ffffff";
	}

-- 
bill

Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

change of color on a field value basis in a table... nag <visitnag@gmail.com> - 2013-03-16 06:16 -0700
  Re: change of color on a field value basis in a table... bill <william@TechServSys.com> - 2013-03-16 10:34 -0400
  Re: change of color on a field value basis in a table... Arno Welzel <usenet@arnowelzel.de> - 2013-03-16 15:40 +0100
  Re: change of color on a field value basis in a table... nag <visitnag@gmail.com> - 2013-03-16 09:17 -0700
    Re: change of color on a field value basis in a table... bill <william@TechServSys.com> - 2013-03-17 06:31 -0400

csiph-web