php在该间隔日期内显示通知

时间:2013-09-28 11:34:51

标签: php jquery mysql jquery-ui jquery-ui-datepicker

在php中,我希望在激活的日期内在页面中显示一条消息,表示管理员将选择日期和日期,并且在选定的日期内,消息将显示在页面中。对于日期选择,我使用了jQuery datepicker。我已经像这样建立了我的数据库

CREATE TABLE IF NOT EXISTS `messagebox` (
  `message_id` int(10) unsigned NOT NULL auto_increment,
  `message` varchar(255) NOT NULL,
  `start_date` date NOT NULL,
  `end_date` date NOT NULL, 
    PRIMARY KEY (`message_id`))
    ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=utf8'))

我的管理员表格看起来像这样

<form id="formID"  method="post"  action="'.$_SERVER['REQUEST_URI'].'" enctype="multipart/form-data">

            <label>Message</label>
            <div class="margin-form"><input class="text-input" type="text"  name="message" id="message" value=""/></div>
            <label>Start Date</label>
            <div class="margin-form"><input class="text-input" type="text"  name="start_date" id="start_date" value=""/> </div>
            <label>End Date</label>
            <div class="margin-form"><input class="text-input" type="text"  name="end_date" id="end_date" value=""/> </div>
            <input type="submit" name="submit_announcement" class="button"  value="Save"/>
            </div>
          </form>

为了插入数据我的代码

if(isset($_POST['submit_announcement'])) {
            'INSERT INTO `messagebox` (`message_id`,`message`,`start_date`,`end_date`) VALUES ("","'.$message.'","'.$start_date.'","'.$end_date.'") ';
          }
          echo "Settings updated successfully";
          else {
          echo "You have some errors";
          }

在这里我可以看到数据已插入数据库。           现在在视图页面中,我将获取数据。

$sql_query = mysql_query("SELECT * FROM messagebox") or die(mysql_error());
          while($row = mysql_fetch_array($sql_query)){
          $message_details = $row['message'].;
            echo $message_details;
          }

这里我收到了所有消息但我只想显示在该时间格式内设置的消息(从start_date到end_date)。在结束日期之后,消息将被取消激活。那么有人可以告诉我该怎么做吗?

1 个答案:

答案 0 :(得分:0)

我认为你在视图页面中有一些抓取开始日期和结束日期的方法,假设你必须添加where子句来选择落在该日期范围之间的消息。但是您没有填写消息日期的字段。您必须将其添加到表中,然后您可以使用BETWEEN运算符。所以查询将是这样的

SELECT * FROM messagebox WHERE dateinserted BETWEEN $start_date AND $end_date;

$start_date$end_date应该是具有正确日期格式的字符串。