簡體   English   中英

從jQuery日期選擇器中獲取查詢的值(格式問題)

[英]get value of query from jQuery date picker (format issue)

我有一個帶有事件的表,並希望根據用戶選擇的日期范圍列出所有事件。 我使用jQuery datepicker,從中獲取價值,然后輸入sql查詢以顯示選定日期范圍之間的事件。 我的日期格式為YYYY-mm-dd(fe 2016-05-05),但是當我從日期選擇器中選擇日期時,它的格式為(YYYY-05-05)。 由於某種原因,它不會將yyyy轉換為日期,但是會轉換為月份和日期。 這是我的代碼:

 <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
 <script src="//code.jquery.com/jquery-1.10.2.js"></script>
 <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
 <link rel="stylesheet" href="/resources/demos/style.css">

 <script>
 $(function() {
 var firstdate = $('#firstdatepicker').datepicker({ dateFormat: 'YYYY- mm-dd' }).val();
 });
 </script>


 <script>
 $(function() {
 var lastdate = $('#lastdatepicker').datepicker({ dateFormat: 'YYYY-mm- dd' }).val();
 });
 </script>
</head>
<body>
<form method="post" action="archive.php">
  <p>First Date: <input name = "firstdatepicker" type="text"  id="firstdatepicker"></p>

 <p>Last Date: <input name = "lastdatepicker" type="text"  id="lastdatepicker"></p>

 <input type="submit" value="Get Data" name="data"/>

 </form>

和我在PHP查詢

 if(!isset($_POST['filters']) && isset($_POST['firstdatepicker']) && isset($_POST['lastdatepicker']) ){

 $firstdate = $_POST['firstdatepicker'];
 $lastdate = $_POST['lastdatepicker'];

$query= "SELECT *
        FROM Event
        WHERE Event.`start_date` BETWEEN '$firstdate' and '$lastdate'
        ORDER BY start_date DESC";

}

YYYY不是有效的日期格式,應使用yy (兩個小寫的y)

同樣,只是一個建議-您應該使用mysqli_real_escape_string類的函數或適合您SQL連接的任何函數來轉義用戶輸入( post

改成:

var lastdate = $('#lastdatepicker').datepicker({ dateFormat: 'yy-mm-dd' }).val();

var firstdate = $('#firstdatepicker').datepicker({ dateFormat: 'yy-mm-dd' }).val();

看看: http : //api.jqueryui.com/datepicker/#option-dateFormat

使用yy作為4位數字的年份占位符: dateFormat: "yy-mm-dd"

暫無
暫無

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

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