Jump to content

[SOLVED] Display Results in 3 columns question


bluewaves

Recommended Posts

I have this code that displays results in a single entry column fashion:

 

// Display all of the records:

  while ($row = @mysql_fetch_array ($r, MYSQL_ASSOC)) {

  echo "<center><table width='380' cellpadding='10'><tr><td width='400'><a href='{$row['Link']}'>

    <font face='Arial' size='2'><img border='0' src='{$row['Thumbnail']}'><P>{$row['Name']}</a><br>  \${$row['Price']}</a>

  </font></td>

    </tr>

</table></center>\n";

  }

 

I'd like to display products in a 3 column fashion.  I've read some of the posts here, but can't get my script to work to do it.

 

 

try something like this

<?php
include 'db.php';

define ("NUMCOLS", 3);

$res = mysql_query("SELECT col1, col2 FROM mytable");

$count = 0;
echo "<TABLE border=1>";
while (list($col1, $col2) = mysql_fetch_row($res)) {

    if ($count % NUMCOLS == 0) echo "<TR>\n";  # new row

    echo "<TD>$col1<br>$col2</TD>\n";
    $count++;

    if ($count % NUMCOLS == 0) echo "</TR>\n";  # end row
}

# end row if not already ended

if ($count % NUMCOLS != 0) {
   while ($count++ % NUMCOLS) echo "<td> </td>";
   echo "</TR>\n";
}
echo "</TABLE>";

?>

Will that allow the flow of data to be displayed:

 

Box 1                                      Box 2                                    Box 3

All of Box 1 Attributes                All of Box 2 Attributes              All of Box 3 Attributes

 

 

and continue on until the end of the records?

Yes

 

[pre]

Box 1          Box 2        Box 3

etc            etc          etc

 

Box 4          Box 5        Box 6

etc            etc          etc

 

Box 7          Box 8        Box 9

etc            etc          etc

 

Box 10       

etc           

[/pre]

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.