使用HTMLrequest从Javascript调用PHP文件不适用于xampp localserver

时间:2017-01-12 08:13:12

标签: javascript php html

我正在尝试从Javascript运行一个php文件。我正在使用XAMPP服务器并保存htdocs文件夹中的所有文件。 PHP文件也保存在htdocs文件夹中,并且在chrome中使用以下地址http://localhost/php_test.php正常工作

正在使用的HTML代码如下所示。

<html>
<body></body>
<script>
getOutput();
function getOutput() {
getRequest(
  "php_test.php", // URL for the PHP file
   drawOutput,  // handle successful request
   drawError    // handle error
);
return false;
}  
// handles drawing an error message
function drawError() {
}
// handles the response, adds the html
function drawOutput(responseText) {
}
// helper function for cross-browser request object
function getRequest(url, success, error) {
var req = false;
try{
    req = new XMLHttpRequest();
} catch (e){
    // IE
    try{
        req = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
        // try an older version
        try{
            req = new ActiveXObject("Microsoft.XMLHTTP");
        } catch(e) {
            return false;
        }
    }
}
if (!req) return false;
if (typeof success != 'function') success = function () {};
if (typeof error!= 'function') error = function () {};
req.onreadystatechange = function(){
    if(req.readyState == 4) {
        return req.status === 200 ? 
            success(req.responseText) : error(req.status);
    }
}
req.open("GET", url, true);
req.send(null);
return req;
}
</script>
</html>

PHP文件是

<?php
     echo 'hello world!';
?>

但是,运行html文件会在浏览器中显示无输出。我试图调试代码并在inspect元素中检查它,但看不到任何问题或错误。

1 个答案:

答案 0 :(得分:3)

您的功能drawErrordrawOutput是空的,您认为它们如何打印任何内容?

function drawError() {

}

function drawOutput(responseText) {

}

试试这样:

function drawError(error) {
     document.write(error);
}

function drawOutput(responseText) {
     document.write(responseText);
}