почему jqXHR.responseText возвращает мой PHP-файл и не выполняет скрипт?
Я пытаюсь просто выполнить ajax-запрос на свой сервер. Запрос передает мои данные формы в signUp.php где информация затем обрабатывается. Затем php вернет текст ответа на мой объект jqXHR, и я распечатаю предупреждение. Проблема в том, что мой php-файл выполняется, а вместо этого jqXHR.responseText возвращает сам мой php-файл, как если бы это был текстовый файл. Пример php responseTest будет выглядеть следующим образом...
"<?php
php code ...
?>"
Вместо этого я хочу, чтобы responseText возвращал мое эхо. Код написан ниже.
var formData = new FormData(document.getElementById("signUpForm"));
$.ajax({
url: "./cgi-script/signUp.php",
type: "POST",
xhr: function giveXmlHTTP(){
myXhr = $.ajaxSettings.xhr();
if(myXhr.upload){
myXhr.upload.addEventListener('progress',progressHandler, false);
}
return myXhr;
},
success: function(data,statusText,jqXHR){
alert(jqXHR.responseText);
},
data:formData,
cache: false,
contentType: false,
processData: false
});
}
2 answers
Обычно это происходит, когда PHP не анализируется. Поэтому убедитесь, что вы работаете на СЕРВЕРЕ , который способен и настроен для запуска PHP, а не , дважды щелкнув HTML-страницу.
Две наиболее распространенные причины этой проблемы заключаются в том, что у вас отсутствует начальный <?php
и что ваш сервер не настроен для PHP. Я предполагаю, что, когда вы просто посетите signUp.php
, вы обнаружите ту же проблему.