Javascript PHP与jQuery:在这种情况下如何实现
我有一个jQuery日历,每天有3个事件。如果某个事件被任何客户机预订,我的日历会在我将其提交到SQL数据库后显示预订的事件 因此,如果我只提交SQL中的任何日期,我的日历就会显示它。这意味着使用PHPJavascript PHP与jQuery:在这种情况下如何实现,javascript,php,jquery,Javascript,Php,Jquery,我有一个jQuery日历,每天有3个事件。如果某个事件被任何客户机预订,我的日历会在我将其提交到SQL数据库后显示预订的事件 因此,如果我只提交SQL中的任何日期,我的日历就会显示它。这意味着使用PHP if($date > 0) { echo 'here is result';} 要显示我想要的任何事件,请为我的页面中的特定事件添加以下脚本:{“EventID”:1,“StartDateTime”:新日期(2015,3,1),“标题”:“上午10点到下午2点”,“URL”:“用户名”,
if($date > 0) { echo 'here is result';}
要显示我想要的任何事件,请为我的页面中的特定事件添加以下脚本:{“EventID”:1,“StartDateTime”:新日期(2015,3,1),“标题”:“上午10点到下午2点”,“URL”:“用户名”,“说明”:“预订者”,“CssClass”:“事件”\u 1},
现在在我的SQL中,我为所有事件添加了3行event*31 day=93行。如果在sql的任何一行中按id找到日期字段上的任何数据,我的页面将显示上述脚本
为了更清楚,我给出了一个错误的脚本,我希望通过jQuery和PHP正确地执行这个脚本
<?php if($id = '1'){if($date > 0){ echo' ?>
{ "EventID": 1, "StartDateTime": new Date(2015,3,<? echo '$date';?>), "Title": "10am to 2pm", "URL": "#", "Description": "Booked by ", "CssClass": "Event_1" },
<?php ';}} ?>
现在我不明白如何用jQuery和php来实现它?在这里我读了更多的文章,但我失败了
下面是我的代码示例:
<?php
include_once('db.php');
global $db;
$result = mysqli_query($db,"SELECT * FROM room ORDER BY id");
if(!$result) {
die("Database query failed: " . mysqli_error());
}
while($row = mysqli_fetch_assoc($result)) {
$id=$row['id'];
$date=$row['date'];
}
?>
<script type="text/javascript">
$().ready(function() {
// others script here
var events = [
{ "EventID": 1, "StartDateTime": new Date(2015,3, 1), "Title": "10am to 2pm", "URL": "username1", "Description": "Booked by ", "CssClass": "Event_1" },}
{ "EventID": 2, "StartDateTime": new Date(2015,3, 1), "Title": "2pm to 6pm", "URL": "username2", "Description": "Booked by ", "CssClass": "Event_2" },
{ "EventID": 3, "StartDateTime": new Date(2015,3, 1), "Title": "6pm to 10pm", "URL": "username3", "Description": "Booked by ", "CssClass": "Event_3" }
// All events
];
});
</script>
$().ready(函数()){
//其他脚本在这里
var事件=[
{“EventID”:1,“StartDateTime”:新日期(2015,3,1),“标题”:“上午10点到下午2点”,“URL”:“用户名1”,“说明”:“预订人”,“CssClass”:“事件1”},}
{“EventID”:2,“StartDateTime”:新日期(2015年3月1日),“标题”:“下午2点到下午6点”,“URL”:“用户名2”,“说明”:“预订人”,“CssClass”:“事件2”},
{“EventID”:3,“StartDateTime”:新日期(2015,3,1),“标题”:“下午6点到晚上10点”,“URL”:“用户名3”,“说明”:“预订人”,“CssClass”:“事件3”}
//所有事件
];
});
根据您的代码,我做了一些调整。我还没有测试过,但应该可以工作,或者至少指向正确的方向:
<?php
include_once('db.php');
global $db;
$result = mysqli_query($db,"SELECT * FROM room ORDER BY id");
if(!$result) {
die("Database query failed: " . mysqli_error());
}
$events = array();
while($row = mysqli_fetch_assoc($result)) {
if( !isset( $events[$row['date']]) ){ //create array of events for each day with results
$events[$row['date']] = array();
}
$num_events = count($events[$row['date']]);
$date = new DateTime($row['date']);
$events[$row['date']][] = array(
"EventID" => 1,
"StartDateTime" => $date->format('Y-m-d'), //assuming real mysql datetime
"Title" => "10am to 2pm",
"URL" => "username1",
"Description" => "Booked by ",
"CssClass" => "Event_" . $num_events + 1
);
}
?>
<script type="text/javascript">
$(function(){
var events = '<?php echo json_encode($events);?>'
for (day in events){
var day_events = events[day];
for(var i= 0; i< day_events.length; ++i){
day_events[i].StartDateTime = new Date(day_events[i].StartDateTime); //convert into proper date
console.log(day_events[i]);
}
}
});
</script>
$(函数(){
var事件=“”
用于(活动日){
var day_事件=事件[日];
对于(变量i=0;i
很抱歉评论不正确在我的实践中,我对每个记录使用Ymd格式,然后使用记录的数组[$Ymd][]=['id'=>$row->id,'name'=>$row->name]代码>