Note that there are some explanatory texts on larger screens.

plurals
  1. POMaking SQL entries appear only after current date - for a 'local events' page
    text
    copied!<p>I've been making an events page for a community website I'm creating. It allows them to create new SQL entries for new events.</p> <p>What I want is to <strong>only display dates ahead of the current date</strong></p> <p>Currently I have:</p> <pre><code>SELECT * FROM eventsDB ORDER BY eventdate ASC LIMIT 30"; </code></pre> <p>But I suppose I have to add something like:</p> <pre><code>WHERE eventdate &gt; NOW() </code></pre> <p>For the record the above doesnt work ↑</p> <p>note: ($eventdate = date of event)</p> <p>CRONTAB:</p> <pre><code> &lt;?php class simpleCMS { var $host; var $username; var $password; var $table; public function display_public() { $q = "SELECT * FROM eventsDB WHERE eventdate &gt; UNIX_TIMESTAMP() ORDER BY eventdate ASC LIMIT 30"; $r = mysql_query($q); if ( $r !== false &amp;&amp; mysql_num_rows($r) &gt; 0 ) { while ( $a = mysql_fetch_assoc($r) ) { $title = stripslashes($a['title']); $author = stripslashes($a['author']); $bodytext = stripslashes($a['bodytext']); $eventdate = stripslashes($a['eventdate']); $created = stripslashes($a['created']); $entry_display .= &lt;&lt;&lt;ENTRY_DISPLAY &lt;div class="post"&gt; &lt;table class="eventstable" cellspacing="0" cellpadding="0"&gt; &lt;tr&gt; &lt;td&gt;&lt;img src="media/icons/icon_calendar.gif"/&gt; &lt;b&gt;$title &lt;/b&gt;&lt;/td&gt; &lt;td class="right"&gt;$eventdate &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td colspan="2" class="small"&gt;$bodytext &lt;i&gt;by $author&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;/div&gt; ENTRY_DISPLAY; } } else { $entry_display = &lt;&lt;&lt;ENTRY_DISPLAY &lt;h2&gt; Your brand new Events Page! &lt;/h2&gt; &lt;p&gt; No entries have been made yet. Follow my instructions to make a new event! &lt;/p&gt; ENTRY_DISPLAY; } $entry_display .= &lt;&lt;&lt;ADMIN_OPTION &lt;p class="admin_link"&gt; &lt;a href="{$_SERVER['PHP_SELF']}?admin=97538642"&gt;&lt;/a&gt; &lt;/p&gt; ADMIN_OPTION; return $entry_display; } public function display_admin() { return &lt;&lt;&lt;ADMIN_FORM &lt;form action="{$_SERVER['PHP_SELF']}" method="post"&gt; &lt;label for="title"&gt;Title:&lt;/label&gt;&lt;br /&gt; &lt;input name="title" id="title" type="text" maxlength="150" /&gt; &lt;div class="clear"&gt;&lt;/div&gt; &lt;label for="bodytext"&gt;Body Text:&lt;/label&gt;&lt;br /&gt; &lt;textarea name="bodytext" id="bodytext"&gt;&lt;/textarea&gt; &lt;div class="clear"&gt;&lt;/div&gt; &lt;label for="author"&gt;Author:&lt;/label&gt;&lt;br /&gt; &lt;input name="author" id="author" type="text" maxlength="100" /&gt; &lt;div class="clear"&gt;&lt;/div&gt; &lt;label for="eventdate"&gt;Date (DD/MM/YY):&lt;/label&gt;&lt;br /&gt; &lt;input name="eventdate" id="eventdate" type="text" maxlength="100" /&gt; &lt;div class="clear"&gt;&lt;/div&gt; &lt;input type="submit" value="Create This Event!" /&gt; &lt;/form&gt; &lt;br /&gt; &lt;a href="../events.php"&gt;Back to Events&lt;/a&gt; ADMIN_FORM; } public function write($p) { if ( $_POST['title'] ) $title = mysql_real_escape_string($_POST['title']); if ( $_POST['bodytext']) $bodytext = mysql_real_escape_string($_POST['bodytext']); if ( $_POST['author']) $author = mysql_real_escape_string($_POST['author']); if ( $_POST['eventdate']) $eventdate = mysql_real_escape_string($_POST['eventdate']); if ( $title &amp;&amp; $bodytext &amp;&amp; $author ) { $created = time(); $sql = "INSERT INTO eventsDB VALUES('$title','$bodytext','$created','$author','$eventdate')"; return mysql_query($sql); } else { return false; } } public function connect() { mysql_connect($this-&gt;host,$this-&gt;username,$this-&gt;password) or die("Could not connect. " . mysql_error()); mysql_select_db($this-&gt;table) or die("Could not select database. " . mysql_error()); return $this-&gt;buildDB(); } private function buildDB() { $sql = &lt;&lt;&lt;MySQL_QUERY CREATE TABLE IF NOT EXISTS eventsDB ( title VARCHAR(150), bodytext TEXT, created VARCHAR(100), author VARCHAR(100), eventdate VARCHAR(100), ) MySQL_QUERY; return mysql_query($sql); } } ?&gt; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload