从Jquery日历中选择日期,并通过数据库进行检查,并打印该日期的事件


Pick Date from Jquery Calender and Check it WIth DB and Print Events on That Date

我有一个jquery日历,它将所选日期存储在变量"X"中。。。我想从数据库中获取存储在该日期的事件并打印它们。。。请帮帮我。。。

<div id="calendar"></div>

日期:

<script>  var x='';
$('#calendar').datepicker({
altField: '#datepicker_send',
    inline: true,
    firstDay: 1,
    showOtherMonths: true,
    altFormat: "yyyy/mm/dd",
    dateFormat: "yyyy/mm/dd",
    dayNamesMin: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
     onSelect: function(dateText){
     $('#event-date').text(dateText)
      x=dateText;          
     // alert(x);
     $.ajax({ type: "POST", 
     url: 'check_events.php', 
      data: {dateText: x }, 
     dataType: 'json',
     success: function(data)
     { alert("data"); }
          } );
    }
    });
</script>

check_events.php:-

<?php
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("users") or die(mysql_error());
if(isset($_POST['dateText']))
{
$x = date_format($_POST['dateText'],'YYYY-MM-DD');
//$uname = mysql_real_escape_string($x);
$sql_check = mysql_query("SELECT *FROM events WHERE date='$x'");
while($res=mysql_fetch_assoc($sql_check))
{
//print_r($res);
echo json_encode($res);
}
}
?>

如何在ajax调用中打印$res-json变量。。。

它应该是不带引号的alert(data)。实际上,您打印的是字符串"data",而不是ajax调用返回的data。此外,实现ajax error:事件来帮助您解决问题也是一种很好的做法。以下示例:

$.ajax({ // your other stuff here error: function (xhr, status, p3, p4){ var err = "Error " + " " + status + " " + p3 + " " + p4; if (xhr.responseText && xhr.responseText[0] == "{") console.log(err); } }); });