PHP文件无法在000webhost上运行


PHP file is not working on 000webhost

HTML文件

<!DOCTYPE html>
    <html>
    <body>
    <p id="demo"></p>

var xml=new XMLHttpRequest();
var url="department.php";
var data=document.getElementById("demo");
xml.open("GET", url, true);
xml.send();

xml.onreadystatechange=function(){
if(xml.readyState == 4 && xml.status==200){
var file=JSON.parse(xml.responseText);
myFunction(file);
}
};
data.innerHTML="Fetching Data..........";
function myFunction(array){
var i=0;
var print="";
for(i=0;i<array.length;i++){
print+=array[i].ID;
}
data.innerHTML=print;
}
</script>
<script></script>
</body>
</html>

JSON文件

[
{"Name":"Arman",
  "ID":"1312038"
},
{"Name":"Khalid",
  "ID":"1312024"
},
{"Name":"Robiul",
  "ID":"1312025"
}

]

PHP文件

//

<?php 
    header('content-Type:application/json');
     $json_data=file_get_contents("student.json");
    echo $json_data;
    ?>

//

我把所有这些文件放在publichtml目录中。但是当我运行department.html时,JSON文件没有响应.public_html文件夹。这就是为什么不起作用。000webhost.or中有PHP的配置吗?我犯了一些语法错误?当我直接将中的"student.json"文件用作"department.html"中的"url"时,它工作正常。

使用"student.json"作为url可以得到正确的结果。

var xml=new XMLHttpRequest();
    var url="student.json";
    var data=document.getElementById("demo");
    xml.open("GET", url, true);
    xml.send();

在PHP文件中更改

$json_data=file_get_content("student.json");

$json_data=file_get_contents("student.json");

您错过了fileget_contents末尾的"s"。

如果这不起作用请通过创建一个包含以下内容的新phpinfo.PHP文件来检查PHP是否已启用

<?php
phpinfo();

将其上传到public_html目录,并在浏览器中访问yourdomain.com/phpinfo.php,如果启用了php,您将看到一个格式化的页面,其中包含有关服务器上安装的版本的所有特定详细信息。如果你没有启用PHP,你可能会看到一个空白页面,或者只是文件的文字内容。

此外,上面的PHP文件将返回与JSON文件相同的响应(file_get_contents()执行与get请求相同的操作。因此,您可以通过将XMLHttpRequest()的url更改为JSON文件的url来绕过此问题。