Итак, что я пытаюсь сделать, это отправить некоторые переменные jQuery в мой PHP-скрипт, используя пост Ajax. Однако по какой-то причине я не могу установить переменные PHP, содержащие значения переменных jQuery.
Я пробовал несколько типов данных Ajax, таких как формы (новые FormData ();) и массивы.
script.js
$.ajax({
url: 'file.php',
type: 'POST',
data: {
'document_id': document_id,
'section_id': section_id,
'active_state': active_state
},
beforeSend: function () {
console.log('the data is: ' + document_id + section_id + active_state + '...');
},
success: function (response) {
console.log(response + ' is locked!');
},
fail: function (error) {
console.log(error + ' could not be locked');
});
file.php
print_r($_POST);
Однако в функции успеха Ajax-запроса я действительно получаю массив с правильными переменными. Когда я проверяю вывод файла PHP, он просто возвращает пустой массив.
Вот что мне в конечном итоге нужно сделать:
if(isset($_POST['document_id'])){
$document_id = $_POST['document_id'];
$section_id = $_POST['section_id'];
$active_state = $_POST['active_state'];
// echo back the data to the success function
// proceed with insert into database
} else {
echo 'the data has not been set';
}
Есть какие-нибудь идеи о том, что я могу делать неправильно?