Правда в рекламе: это домашнее задание, с которым я борюсь.
Я использую XAMPP на своем рабочем столе. Я использую сообщение AJAX для отправки данных формы на страницу PHP с помощью плагина проверки jQuery. Вот JS:
var $infoForm = $('#infoForm');
$infoForm.validate({
submitHandler: function() {
var formValues = getFormValues();
$.post("/Week5/process.php", formValues, postResponse, "text");
}
});
function postResponse(response) {
$infoForm.fadeOut("slow", function() {
console.log(response);
$('#postResponse').empty().append('<p>' + (response.message ? response.message : 'The server is silent') + '</p>').slideDown("slow");
});
}
Вот файл process.php:
<?php
header("Content-type: application/json");
$message = array('message'=>'Thank you for your submission');
echo json_encode($message);
?>
Вот как response
выглядит в консоли:
<br />
<b>Warning</b>: Unknown: failed to open stream: No such file or directory in <b>Unknown</b> on line <b>0</b><br />
<br />
<b>Fatal error</b>: Unknown: Failed opening required 'D:/User Data/johnr/OneDrive/Education/ICT 4510/htdocs/Week5/process.php' (include_path='C:\xampp\php\PEAR') in <b>Unknown</b> on line <b>0</b><br />
Я получаю те же сообщения (без тегов HTML) в журналах ошибок Apache. Я не думаю, что у меня есть ошибка пути, потому что когда я изменяю URL в $.post()
с 'process.php' на что-то вроде 'foo.php', я получаю 404 Not Found, как я ожидал получить. Похоже, что сервер находит process.php, но затем не может найти ответ, который он выводит. Я не думаю, что плагин проверки является проблемой, потому что я попробовал это, обработав событие отправки формы напрямую, и результат не изменился:
$infoForm.submit(function(event) {
event.preventDefault();
var formValues = getFormValues();
$.post("/Week5/process.php", formValues, postResponse);
});
Последнее назначение данных: на самом деле я получил два события запроса / ответа, связанных с process.php. Первый - это POST с правильной полезной нагрузкой запроса и ошибками в качестве полезной нагрузки ответа. Второй - это GET без полезных данных запроса или ответа.