2014-09-26 76 views
0

我真的是新來的PHP,我想在我的PHP頁面做一個XMLHttpRequest,不知道誰能做到這一點。PHP XMLHttpRequest

這是Chrome的信息,你可以看到標題是XMLHttpRequest的: Chrome Request Image

這是響應數據(表): Chrome XHR response

我怎麼能做出我的PHP這個請求頁??

PD - 對不起我的英文不好)

+0

爲Y你確定你想使用PHP來提出這個請求,因爲我將使用相同的Ajax。如果你想檢查一個例子,看看http://www.w3schools.com/php/php_ajax_xml.asp – Satya 2014-09-26 11:27:14

+0

@Satya謝謝,不太清楚必須使用什麼:SI有一個PHP頁面和我只想得到這張表,你可以在不是我的網站的第二個鏈接看到,不知道我該怎麼做 – dina 2014-09-26 16:19:20

回答

0

,如果你想使用PHP做一個XMLHttpRequest您可以使用捲曲。通過將合適的頭部,你就會做出看起來像你正在做一個XMLHttpRequest

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $sUrl); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Return result as a string 
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Host" = > "someloginserver.com", 
    "User-Agent" = > "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1", 
    "Accept" = > "application/json, text/javascript, */*; q=0.01", 
    "Accept-Language" = > "en-us,en;q=0.5", 
    "Accept-Encoding" = > "gzip, deflate", 
    "Accept-Charset" = > "ISO-8859-1,utf-8;q=0.7,*;q=0.7", 
    "Keep-Alive" = > "115", 
    "Connection" = > "keep-alive", 
    "X-Requested-With" = > "XMLHttpRequest", 
    "Referer" = > "http://remote/" 
)); 
// Execute curl 
$result = curl_exec($ch); // The output will be stored $result 
// Check Error 
if ($errno = curl_errno($ch)) { 
    $error_message = curl_strerror($errno); 
    echo "cURL error ({$errno}):\n {$error_message}"; 
} else { 
    echo "<h2>Request Completed</h2>"; 
} 
curl_close($ch); 
+0

適合我!但是當我調用curl_exec時,結果顯示在我的網頁中,我只希望明文表中的表(XHR數據)提取一些數據,有什麼辦法嗎? – dina 2014-09-26 16:33:26

+0

@dina我剛剛編輯了我的答案,您需要添加CURLOPT_RETURNTRANSFER選項並將其設置爲true。然後你會在$ result變量中得到純文本的結果。從那你就可以做任何提取工作 – Isaac 2014-09-26 16:38:30

+0

完美!再次感謝 – dina 2014-09-26 16:48:01

1

即使我不知道任何細節,大多是的SimpleXML可以幫助:)

對於這個feed.xml -Document :

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<items> 
    <title>Cities</titel> 
    <item> 
     <cityname>Genf</cityname> 
    </item> 
    <item> 
     <cityname>Köln</cityname> 
    </item> 
</items> 

嘗試:

<?php 
$xml = simplexml_load_file("feed.xml"); 
foreach ($xml->item as $item) { 
    echo $item; 
} 
?>