1
이것은 PHP 및 XMLHttpRequest를 처음 사용하는 것으로 어디에서 엉망이 됐는지 잘 모르겠습니다.XMLHttpRequest는 PHP 코드가 아닌 PHP 코드를 반환합니다.
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 코드입니다 (newsmanager.js) :
여기 내 자바 스크립트 코드의
<?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로부터 배열. 나는이 문제를 여러 번 읽었으며 왜이 문제가 발생하는지 보지 못했습니다. 어떤 도움을 주시면 감사하겠습니다.
웹 서버가 실행 중입니까? – jeff
예. 호스트는 Github Pages입니다. – JsKingBoo