无法访问通过 jquery ajax 发送的 php 文件中的数据



我正在尝试访问通过jquery ajax方法发送的php文件中的一些数据但是我得到了一个未定义索引的错误。

sender.php

$('#slot1').click(function(){
var selectedDate = $('#selectedDate').html();
var timeSlot = $('#timeSlot1').html();
var hm = timeSlot.slice(0, 5);
var seconds = ':00';
var time = hm + seconds;
$.ajax({
url: 'insertBookings.php',
type: 'post',
data: {date: selectedDate, timeslot: time},
async: false,
success: function(data) {
alert(data);
}
})
})

接收器.php

<?php
$date = $_POST['date'];
echo date;
?>

考虑使用以下内容进行测试。

$('#slot1').click(function() {
var selectedDate = $('#selectedDate').text().trim();
var timeSlot = $('#timeSlot1').text().trim();
var selectedTime = timeSlot.slice(0, 5) + ":00";
$.ajax({
url: 'insertBookings.php',
type: "POST",
data: {
"date": selectedDate,
"timeslot": selectedTime
},
async: false,
beforeSend: function() {
console.log("Sending Date: " + selectedDate + ", Time: " + time);
},
success: function(data) {
console.log("Received: ", data);
},
error: function(xhr, status, error) {
console.log("Error:", status, error);
}
});
});

没有大的变化,但我从.html()切换到了.text()。前者将收集的不仅仅是文本(如果有的话)。由于您没有提供最小、可复制的示例,因此这是一种预防措施,以确保在发送之前不会捕获不正确的项目。

我还添加了一些额外的Ajax代码,以帮助查看发生的每一部分。

在你的PHP中,你也有一个语法错误。您在date之前缺少一个$

<?php
$date = $_POST['date'];
echo $date;
?>

最新更新