[英]Unable to get .xml file to load in to .php file using html + javascript
[英]Get the link of an specific xml file from the server (php script) and load it in javascript
在網站上,我正在創建一個可以上載和下載文件的用戶,並且創建了一個包含操作信息的xml日志。 在網站上有一個頁面,其中創建了讀取xml的日志xml表。
當它全部放在硬盤上時,它可以正常工作,但是現在我開始將其托管在服務器上,我不知道如何使它工作。
在本地計算機中,xml請求是
xmlhttp.open("GET","file.xml",false);
現在在真實的網站中,我需要對php腳本進行ajax調用,以獲取我的個人xml文件的路徑。
第一個問題:我需要從php腳本輸出哪種地址?
http://mywebsite/folder1/folder2/log_username.xml
是這樣嗎
通過ajax調用,我將地址保存在變量中,並且xml請求變為:
xmlhttp.open("GET",xml_address_variable,false);
問題是未加載XML。 問題出在哪兒?
編輯:現在,我在javascript代碼中寫了一個特定用戶的實驗路徑,它可以工作,但是如果我將變量(link_xml)放在AJAX調用應保存路徑的位置,它將不起作用,所以這是關鍵部分我的代碼:
var link_xml = askXMLaddress();
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET",link_xml,false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
為了使ajax加載它,您需要從文檔根目錄獲取文件路徑。 所以如果你想
http://mywebsite/folder1/folder2/log_username.xml
JS的全部需求是
../folder1/folder2/log_username.xml
那么你可以像這樣使用jquery.load()
var path = <?php echo "../folder1/folder2/log_username.xml"; ?>;
$( "#username" ).load(path);
現在,您最好使用另一個ajax請求,而不要使用“ php echo ...”。 但是這將取決於您的用例。
function loadXML(path, selector)
{
var xml = new XMLHttpRequest();
try {
xml.open("GET", path, false);
xml.send(null);
}
catch (e) {
//some error stuff
}
document.getElementById(selector).innerHTML=xml.responseText;
}
我無法保證這項工作正常,我目前沒有服務器解析xml內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.