Printing mysql_fetch_array results in multicolumn table

This is a discussion on Printing mysql_fetch_array results in multicolumn table within the MySQL Database forums, part of the Database Forums category; I'm not sure if this qualifies as a mysql or a php question so I'm asking in both ...


Go Back   Usenet Forums > Database Forums > MySQL Database

FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 05-01-2006
JackM
 
Posts: n/a
Default Printing mysql_fetch_array results in multicolumn table

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>";
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 "</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?
Reply With Quote
  #2 (permalink)  
Old 05-02-2006
Schraalhans Keukenmeester
 
Posts: n/a
Default Re: Printing mysql_fetch_array results in multicolumn table

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>";
> 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 "</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?


Not completely sure what you want exactly, but there are some weird
constructs in both cases. You create a complete table for each db row it
seems. The table tages should be outside the loop I suppose.

It is no surprise in the second example you get the same data in both
columns, since that is what you ordered. If what you aim for is a table
looking like this:

ID <ID value for row x>
name <name value for row x>

[etc]

ID <ID value for row y>
name <name value for row y>

[etc]

then replace all the <td> </td> contents of the first column with
appropriate contents.

Sh.
--
Sigh. I like to think it's just the Linux people who want to be on
the "leading edge" so bad they walk right off the precipice.
(Craig E. Groeschel)
Reply With Quote
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are Off
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On




All times are GMT +1. The time now is 09:56 AM.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.0.0