webezine Posted February 28, 2006 Share Posted February 28, 2006 Hi all.Really need some help with this! I have an events database where event details are stored. The date is stored in teh format yyyy/mm/dd. I have a script that reads all events from the database and echos them out onto a new sheet. Thing is I need it only to display 2 weeks worth of event... meaning showing all events taht take ;place within the next 2 weeks from the curretn date. The current script i ahve is:<?php$conn = mysql_connect();$counter =0;mysql_select_db("");$result = mysql_query("SELECT * FROM events ORDER BY eventdate");while($row = mysql_fetch_array($result)){$counter=$counter+1;}if ($counter>0){echo"<p> The following event take place within the next 2 weeks:</p><table>";echo "<tr><td colspan='4'><hr></hr></td></tr>"; $result = mysql_query("SELECT * FROM events ORDER BY Eventdate");while($row = mysql_fetch_array($result)){ echo "<tr><td><em>Name: </em> $row[name]</td>"; echo "<td><em>Date (yyyy-mm-dd): </em> $row[eventdate]</td>"; echo "<td><em>Tickets: </em> $row[maxtickets]</td>"; echo "<td><em>Price: </em> $row[price]</td>"; echo "</tr><tr><td colspan='1'><em>Tickets remaining: </em> $row[remintickets]</td>"; echo "<td colspan='3'><em>Description: </em> $row[description]</td></tr>"; echo "<tr><td colspan='4'><hr></hr></td></tr>";$counter=$counter+1;}This works but just need some help to load only 2 weeks worth of stuff. PLEASE HELP!If you have any ideas please e-mail me @ webezine 'at' hotmail.co.uk Quote Link to comment Share on other sites More sharing options...
litebearer Posted February 28, 2006 Share Posted February 28, 2006 Here is some info regarding using mysql's date functions. With a little tweaking it will accomplish what you need.[a href=\"http://www.devshed.com/c/a/MySQL/Date-Arithmetic-With-MySQL/3/\" target=\"_blank\"]http://www.devshed.com/c/a/MySQL/Date-Arit...c-With-MySQL/3/[/a]Lite... Quote Link to comment Share on other sites More sharing options...
shocker-z Posted February 28, 2006 Share Posted February 28, 2006 i personaly would use:SELECT * FROM events WHERE DATE_SUB(CURDATE(),INTERVAL 14 DAY) <= eventdate; Quote Link to comment Share on other sites More sharing options...
kenrbnsn Posted February 28, 2006 Share Posted February 28, 2006 Change how the field is defined in MySQL to be of the type "date", then you can use the query as posted by shocker-z.Ken Quote Link to comment Share on other sites More sharing options...
webezine Posted March 6, 2006 Author Share Posted March 6, 2006 Shocker if this works I LOVE YA! Quote Link to comment 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.