| 
	
 | 
 Posted by Peter H. Coffin on 06/22/92 11:46 
On Mon, 01 May 2006 11:19:39 -0400, JackM wrote: 
> I'm not sure if this qualifies as a mysql or a php question so I'm  
> asking in both groups. 
>  
> I am pulling the results of a mysql query from my database and want to  
> print the results into a two column table. I know how to get the results  
> into a single column table just fine using: 
>  
> while($row = mysql_fetch_array($result)) { 
> 	print "<table border=2><tr><th>" . $row[name]; 
> 	print "<tr><td>"; 
> 	print mysql_field_name($result, 0) . ": " . $row[ID]."<br>"; 
> 	print mysql_field_name($result, 1) . ": " . $row[name]."<br>"; 
> 	print mysql_field_name($result, 2) . ": " . $row[address]."<br>"; 
> 	print mysql_field_name($result, 3) . ": " . $row[city]."<br>"; 
> 	print mysql_field_name($result, 4) . ": " . $row[telephone]."<br>"; 
> 	print "</td></tr>"; 
> 	print "</table>\n"; 
> 	print "<br><br>"; 
> } 
> 	 
> and it works fine. But my efforts to get the reults into a two column  
> setup have become frustrating. My latest attempt was: 
>  
> while($row = mysql_fetch_array($result)) { 
> 	print "<table border=2 width='90%'>"; 
> 	print "<tr>"; 
> 	print "<td>"; 
> 	print "<b>" . $row[name] . "</b><br>"; 
> 	print mysql_field_name($result, 0) . ": " . $row[ID]."<br>"; 
> 	print mysql_field_name($result, 1) . ": " . $row[name]."<br>"; 
> 	print mysql_field_name($result, 2) . ": " . $row[address]."<br>"; 
> 	print mysql_field_name($result, 3) . ": " . $row[city]."<br>"; 
> 	print mysql_field_name($result, 4) . ": " . $row[telephone]."<br>"; 
> 	print "</td>"; 
> 	 print "<td>"; 
        if ($row = mysql_fetch_array($result)) { 
> 	  print mysql_field_name($result, 0) . ": " . $row[ID]."<br>"; 
> 	  print mysql_field_name($result, 1) . ": " . $row[name]."<br>"; 
> 	  print mysql_field_name($result, 2) . ": " . $row[address]."<br>"; 
> 	  print mysql_field_name($result, 3) . ": " . $row[city]."<br>"; 
> 	  print mysql_field_name($result, 4) . ": " . $row[telephone]."<br>"; 
        } else {  
          print " "; 
        } 
> 	print "</td>";				 
> 	print "</tr>"; 
> 	print "</table>\n"; 
> 	print "<br><br>"; 
> } 
>  
> This puts the same data from a single result in both <td> fields though.  
> I want it to put data from the first result in the left <td> and data  
> from the second result in the right side and continue on from there  
> until the end. 
>  
> What am I overlooking on this to make it work as I need it to? 
 
You need to fetch a new row from your results (and handle the condition 
of there being no more results properly), as indicated above. 
 
--  
79. If my doomsday device happens to come with a reverse switch, as soon as it  
    has been employed it will be melted down and made into limited-edition  
    commemorative coins. 
                --Peter Anspach's list of things to do as an Evil Overlord
 
  
Navigation:
[Reply to this message] 
 |