簡體   English   中英

如何使用 php 和 mysql 顯示接下來的 30 天數據?

[英]how display next 30 days data using php and mysql?

有一個 jquery.ui.datepicker 如下:

<script type="text/javascript">
$(function() {
$("#datepicker").datepicker({
minDate: 'today',
maxDate: "+90D",
showOn: "button",
buttonImage: "images/calendar-new2.jpg",
buttonImageOnly: true,
dateFormat: "D, dd M, yy"   
});
});
</script>

並將日期日期選擇器包含在表單中,如下所示:

<form method="post"><input align="center" type="hidden" id="datepicker" onChange="this.form.submit();" name="datepicker" value=""/></form>

下面從 mysql 表中調用數據:

<?php
$today = date('D, d M, Y');
$sql = "SELECT * FROM postings WHERE day1 = '$today' AND city = 'New York' OR day2 = '$today' AND city='New York' OR day3 = '$today' AND city='New York' OR day4 = '$today' AND city='New York' OR day5 = '$today' AND city='New York' OR day6 = '$today' AND city='New York' OR day7 = '$today' AND city='New York' OR day8 = '$today' AND city='New York' OR day9 = '$today' AND city='New York' OR day10 = '$today' AND city='New York'";
if($_POST!=""){
$mydate = mysql_real_escape_string($_POST['datepicker']);
if($mydate!=""){    
$sql = "SELECT * FROM postings WHERE day1 = '$mydate' AND city = 'New York' OR day2 = '$mydate' AND city='New York' OR day3 = '$mydate' AND city='New York' OR day4 = '$mydate' AND city='New York' OR day5 = '$mydate' AND city='New York' OR day6 = '$mydate' AND city='New York' OR day7 = '$mydate' AND city='New York' OR day8 = '$mydate' AND city='New York' OR day9 = '$mydate' AND city='New York' OR day10 = '$mydate' AND city='New York'";  
}       
}
if($mydate) {
echo "New York - $mydate";
}
else {
echo "New York - $today";
}
$num_results_per_page = 8;
$num_page_links_per_page = 5;
$pg_param1 = ""; // Ex: &q=value
$result=mysql_query($sql);
$row = mysql_fetch_array($result);
pagination($sql, $num_results_per_page, $num_page_links_per_page, $pg_param);
if($pg_error == '')
{
if(mysql_num_rows($pg_result) > 0)
{
while($data = mysql_fetch_assoc($pg_result))
{ 
echo "
-------
--------
-----
";
?>

此查詢將顯示今天的數據或根據用戶單擊的日期顯示為數據。

請幫我解決以下問題:1)下一個和上一個按鈕,如果點擊顯示前幾天的數據和后幾天的數據。 2) 顯示接下來 7 天的數據。

您的查詢效率極低。 這將工作得更好,並且更容易准備好:

$date = (isset($_POST['datepicker'])) ? "'" . mysql_real_escape_string($_POST['datepicker']) "'" : 'now()';

SELECT * FROM postings
WHERE (city = 'New York') and
   $date IN (day1, day2, day3, day4, day5, day6, day7, day8, day9, da10);

至於接下來的 7 天,只需執行以下操作:

WHERE ...
    DATE_ADD($date, INTERVAL 7 DAY) IN (....)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM