java - XMLHttpRequest 返回 PHP 代码,而不是 PHP 输出

标签 java php json xmlhttprequest

这是我第一次使用 PHP 和 XMLHttpRequest,我不确定我哪里搞砸了。

这是我的 JavaScript 代码:(newsmanager.js)

function getNews(){

  var httpReq;

  if (window.XMLHttpRequest){
    httpReq=new XMLHttpRequest();
  } else {
    httpReq=new ActiveXObject("Microsoft.XMLHTTP");
  }

  try {
    httpReq.open("GET", "../news/newsgetter.php", false);
    httpReq.onreadystatechange = stateChange;
    httpReq.send(null);
  } catch(e) {
    alert("ERROR: " + e);
  }

  function stateChange() {
    //convert result to JSON
    alert(httpReq.readyState);
    alert(httpReq.responseText);
    var result = JSON.parse(httpReq.responseText);
    loadNews(result);
  }

}

function loadNews(result){ //its an ARRAY
  alert("test 2");
  var newsContainer = document.getElementById("news-holder");
  var html = '<hr>';

  for(var i = 0; i < result.length; i++) {

    html += result[i];
    html += '<hr>';

  }

  newsContainer.innerHTML=html;

}

这是我的 PHP 代码:

<?php

  //folder relative to this file
  $dir = "messages";
  //array holding all addresses
  $result = array();

  //get files in directory
  $files = scandir($dir);

  while (($file = $dir->read()) !== false){
    //find MD files
    if(strlen($file) < 3 || substr($file, -4) != '.md')
        continue;

    $result[] = $dir . "/" . $file; 
  }

  //convert array to JSON
  echo(json_encode($result));

?>

问题是 httpReq.responseText 返回 PHP 代码本身,而不是来自 echo 的数组。我已经读了好几遍了,但我不明白为什么会导致这个问题。任何帮助将不胜感激

最佳答案

您应该启用/配置 php 才能与您的网络服务器配合使用。 您的网络服务器返回您的 php 代码,因为它不知道应该执行它。 在网上查找有关如何在操作系统/网络服务器上安装 php 的教程。

关于java - XMLHttpRequest 返回 PHP 代码,而不是 PHP 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24722752/

相关文章:

javascript - 如何遍历多维 JSON 数据并将相应的值传递给函数调用

java - 为注释字段设置默认空值时出错

php - 将密件抄送添加到使用 PHP 的 Gmail API 发送的电子邮件

php - Magento 分层导航 - 复选框

json - JSON API 响应格式有什么标准吗?

javascript - 破解 json.dumps 以输出不带引号的字符串?

java - 添加到@ManyToOne 时更新父引用

java - 使用 OpenCV 在 Android 上进行数字识别的训练数据

Java非阻塞语句之间的执行延迟

php - 尝试在 woocommerce 结帐页面的总计部分之后放置自定义字段