为什么是jqXHR ?responseText返回我的PHP文件而不执行脚本



我试图简单地执行一个ajax请求到我的服务器。请求将我的表单数据传递给sign .php,然后在那里处理信息。然后php将向jqXHR对象回显一个responseText,然后我打印警报。问题是执行的是我的php文件,而不是jqXHR。相反,responseText返回my 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
            });
        }

这些通常发生在PHP未被解析时。因此,请确保您运行的是SERVER,它有能力并配置为运行PHP,并且没有双击HTML页面

这个问题的两个最常见的原因是您缺少初始<?php和您的服务器没有为PHP设置。我猜当你访问signUp.php时,你会发现同样的问题。

最新更新