NickG21 Posted September 28, 2010 Share Posted September 28, 2010 Hey Everyone, I'm creating a site that will show images uploaded for certain days working on a job site. Kind of a day-to-day photo journal for the customer. On the site, the user gets here, sees 3 large images, and a series of thumbnails if more than 3 images exist for that day (works fine). However, underneath that I want to display a 3-4 column setup of "Archived Dates" that provide a link to the images of the other dates. I have this working correctly, but the results are displayed as follows: Date 1: Date 2: Date 3: etc.... I want them to display like this; Day 1 Day 4 Day 2 Day 5 Day 3 Day 6 and so on..... in a 3 column format. Here is the code I have right now just looping through to display these link results, not the rest of the page. I am trying to do it tableless right now, but if that isn't the right way to go, please let me know. Thanks to anyone in advance, Nick $SQLRowe = "SELECT DISTINCT RoweImgDate from tblRowe WHERE RoweImgDate !='" . $_GET['date'] . "' Order by RoweImgDate DESC Limit 0, 30"; //echo $SQLRowe; $rsSQLRowe = mysql_query($SQLRowe); <span class="rowe">Archived Photos:</span><br/> <div id="archive"> <?php while($row = mysql_fetch_array($rsSQLRowe)){ //echo "<a href='index.php?id="' . $row[RoweImgID] . '"' class='link'>$row[RoweImgDate]</a></br>"; echo "<div id='archivedates'>"; echo "<a href='index.php?date=" . $row[RoweImgDate] . "' class='link'>$row[RoweImgDate]</a>"; echo "</div>"; //echo "<img src='images/$row[RoweImage]'/><br/>"; //echo "<span class='FeatDesc'><p>$row[RoweImgDesc]</p></span><br/>"; } ?> </div> Quote Link to comment https://forums.phpfreaks.com/topic/214618-display-mysql-results-as-3-column-table/ Share on other sites More sharing options...
BlueSkyIS Posted September 28, 2010 Share Posted September 28, 2010 i use this, i found on the net. you can adjust it for mysql results: /// PUT DATA IN ROWS INSTEAD OF COLUMNS //////////$items = array('ALABAMA','ALASKA');//create an array with your data// Default # of Columns$numcols = 4;// Number of Items$numitems = count($items);// Number of Rows$numrows = ceil($numitems/$numcols);echo '<table>';for ($row=1; $row <= $numrows; $row++) {$cell = 0;echo ' <tr>'."\n";for ($col=1; $col <= $numcols; $col++) { echo ' <td>'."\n"; if ($col===1) { $cell += $row; print $items[$cell - 1]; } else { $cell += $numrows; print $items[$cell - 1]; } echo ' </td>'."\n";}echo ' </tr>'."\n";}echo '</table>'; Quote Link to comment https://forums.phpfreaks.com/topic/214618-display-mysql-results-as-3-column-table/#findComment-1116736 Share on other sites More sharing options...
ignace Posted September 28, 2010 Share Posted September 28, 2010 This isn't something complex: echo '<div style="float: left;">', "\n"; $i = 1; $total_per_column = 20; while($row = mysql_fetch_assoc($result)) { if(($i % $total_per_column) == 0) { echo '</div>', "\n", '<div style="float: left;">', "\n"; } // echo whatever you want it to look like ++$i; } echo '</div>'; It's adviced to calculate $total_per_column based on the result set (or limit the result set). Quote Link to comment https://forums.phpfreaks.com/topic/214618-display-mysql-results-as-3-column-table/#findComment-1116813 Share on other sites More sharing options...
NickG21 Posted September 28, 2010 Author Share Posted September 28, 2010 hey guys thanks for the suggestions, unfortunately, i'm not able to get either of them working. BlueSky, I can't seem to get the array to properly store all the values from the SQL result rows, only 1 value is being stored in the $items array. ignace: it seems like you're code leaves at least one of the <div> tags open when it is executed, I got yours to begin displaying how I wanted but it would only display the first and 4th results, as i set the num of rows per column to only 3, displaying like this; 1 4 instead of: 1 4 2 3 thanks again for the help guys, ill keep plugging Quote Link to comment https://forums.phpfreaks.com/topic/214618-display-mysql-results-as-3-column-table/#findComment-1116818 Share on other sites More sharing options...
BlueSkyIS Posted September 28, 2010 Share Posted September 28, 2010 BlueSky, I can't seem to get the array to properly store all the values from the SQL result rows, only 1 value is being stored in the $items array. loop over the results, loading them into an array, then build the table. Quote Link to comment https://forums.phpfreaks.com/topic/214618-display-mysql-results-as-3-column-table/#findComment-1116912 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.