Siggles Posted November 26, 2007 Share Posted November 26, 2007 Hi, I have a web page that takes gigs from a MySQL dbase and using a SELECT statement and $row prints them to a page in date order. I would like to know if it is possible to print the month above dates in December then January and so forth. For example... December - heading The Jazz Club 1st December 2007 January The Jazz Club 1st January 2008 etc the code I have so far is... $result = mysql_query("SELECT * FROM Gigs WHERE date(Eventdate) >= CURRENT_DATE() ORDER BY Eventdate ASC"); while($row = mysql_fetch_array($result)) { echo "<table width=\"100%\" >"; echo "<tr > <td><strong><span class=\"main_text\">".date('l jS F Y',strtotime($row['Eventdate']))."</span></strong></td> </tr>"; echo "<tr > <td><span class=\"main_text\">".$row['Venue']."</span></td> </tr>"; echo "<tr > <td><span class=\"main_text\">".$row['Address1']."</span></td> </tr>"; echo "<tr > <td><span class=\"main_text\">".$row['Address2']."</span></td> </tr>"; and so forth, which works fine. I thought of an IF statement in their somewhere. Maybe if ($row[eventdate']) == but not sure how to write it or include it. Can you help (again)? Thank you Link to comment https://forums.phpfreaks.com/topic/78919-solved-printing-a-heading-above-info-from-a-select-statment/ Share on other sites More sharing options...
Siggles Posted November 26, 2007 Author Share Posted November 26, 2007 I found a solution from this site :-) http://www.phpfreaks.com/forums/index.php/topic,88379.0.html I re-wrote the code a bit to match the PHP from that page. Great stuff. This site is al ife saver. $today = date("Y-m-d"); $result = mysql_query("SELECT * FROM Gigs WHERE Eventdate >= '$today' ORDER BY Eventdate ASC"); $month=1; while($myrow = mysql_fetch_assoc($result)) { $date = $myrow['Eventdate']; list($year, $month, $day) = split("-", $date); $monthname=date('M', mktime(0, 0, 0, $month, $day, $year)); $date = date('d', mktime(0, 0, 0, $month, $day, $year)); if ($year != $lastyear) { echo("<B>Year $year</B><Br>"); } if ($month != $lastmonth) { echo("<span class=\"main_text\"><B>$monthname</B></span><Br>"); } echo "<table width=\"100%\" >"; echo "<tr > <td><strong><span class=\"main_text\">".date('l jS F Y',strtotime($myrow['Eventdate']))."</span></strong></td> </tr>"; echo "<tr > <td><span class=\"main_text\">".$myrow['Venue']."</span></td> </tr>"; echo "<tr > <td><span class=\"main_text\">".$myrow['Address1']."</span></td> </tr>"; echo "<tr > <td><span class=\"main_text\">".$myrow['Address2']."</span></td> </tr>"; if (!empty($myrow['Address3'])) { echo "<tr > <td><span class=\"main_text\">".$myrow['Address3']."</span></td> </tr>"; } echo "<tr > <td><span class=\"main_text\">".$myrow['Postcode']."</span></td> </tr>"; echo "<tr > <td><span class=\"main_text\">".$myrow['Phone']."</span></td> </tr>"; if (!empty($myrow['url'])) { echo "<tr > <td><span class=\"main_text\"><a href=".$myrow['url']." target=\"blank\">More Info</a></span></td> </tr>"; } echo "</table><br>"; $lastmonth=$month; $lastyear=$year; } echo "<br>"; echo "<strong><span class=\"main_text\"><a href=\"http://forthcominggigs.php\">Click here</a> for a full listing.</span></strong>"; echo "<br><br>"; mysql_close($con); Link to comment https://forums.phpfreaks.com/topic/78919-solved-printing-a-heading-above-info-from-a-select-statment/#findComment-399410 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.