无法显示来自数据库的工具提示结果。这是我的代码的过程我使用jquery ui获得了多个月的日历,当用户在日期悬停时,它将显示一个工具提示,其中包含来自数据库的事件列表并将其加载到div但是我无法获取数据从数据库比较用户悬停的日期。
以下是我的代码js和php
$(document).ready(function () {
$("event_calendar").datepicker(
numberOfMonths: 3,
showButtonPanel: true,
);
$('td a').live('mouseenter', function () {
var day = $(this).text();
var month = $(this).parent('.ui-datepicker').find('.ui-datepicker-month').text();
var year = $(this).parent('.ui-datepicker').find('.ui-datepicker-year').text();
var dateSelected = month + day + year;
$('.demo').html(date);
$('#tooltip').load("event_list.php", {thisDate: dateSelected});
$('#tootltip').css('visibility', 'visible')
});
});
event_list.php
$thisDate = $_REQUEST['thisDate'];
$qry = "SELECT * FROM event where eventdate = '$thisDate'";
$result = mysql_query($qry) or die ("Error in query: $qry. " . mysql_error());
while($row = mysql_fetch_object($result)){
echo $row->event_name;
}
It doesnt show any output on <div id="tooltip"></div>
我的日期格式是存储在mysql数据库
上的UNIX时间戳答案 0 :(得分:0)
$_REQUEST
超全球,使用$_POST
(或$_GET
取决于ajax调用方法)会更好(更安全)var dateSelected = month + day + year;
我不认为它会返回时间戳(您应该使用此值创建新的Date
对象并使用getTime()
方法获取时间戳,例如:
var dateSelected = Date(year, month - 1, day).getTime() / 1000;
请查看此信息以获取更多信息:JavaScript Date Object $thisDate
变量的内容以防止sql注入exit;
以确保该脚本在回显所有信息后退出您的PHP脚本不会生成MySQL错误,因为查询不正确但返回空结果。在PHP脚本中打印查询,您将看到使用javascript控制台的错误(在您的问题的评论中提到)