看板 PHP 關於我們 聯絡資訊
各位好 我用php寫一個將網頁存成XML檔 存起來的XML檔開啟後,卻出現以下的訊息如下: XML 解析錯誤: 找不到元素 位址: file:///C:/TWAMPd/htdocs/library.xml 行號 2, 第 1 個字: 我的php code如下所示: <body> <form name=form1> <?php $xml = "http://zh.wikipedia.org/w/api.php?action=query&titles=漁人碼頭 &prop=info&inprop=url&format=xml" $doc = new DOMDocument(); $doc->load("$xml"); $doc->save("C:\TWAMPd\htdocs\library.xml"); ?> </form> </body> 請問該怎麼做才能使存起來的XML檔可以正常顯示? 麻煩各位版友了,謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.129.20.145
bibo9901:把你的XML檔開起來看看 05/08 21:29
bibo9901:用notepad之類的 05/08 21:29
renmax:只出現 <?xml version="1.0"?> 這麼一行 05/08 21:34
bibo9901:那代表你的$xml並沒有寫進去 05/08 21:40
bibo9901:tw.php.net/manual/en/domdocument.load.php#91384 05/08 21:44
bibo9901:不然就先取得資料 再丟到DOMDocument裡面 05/08 21:46
我是參考網路上的一些程式碼所寫成code $doc = new DOMDocument(); $doc->load("http://news.google.com.tw/news?ned=tw&ned=tw&q=%E6%B0%A 3%E5%80%99%E8%AE%8A%E9%81%B7&ie=UTF-8&output=rss"); $doc->save("C:\TWAMPd\htdocs\library.xml"); 上方的程式碼是可以抓下完整的XML檔的,所以我也不知道我是哪邊搞錯@@"
heartinside:你的dom裡面又沒有資料~當然只有宣告那行QQ" 05/08 21:52
heartinside:你應該是要用curl之類的把目標的網頁內容整個抓下來 05/08 21:53
heartinside:然後再用檔案處理的函式把資料存成xml檔吧? 05/08 21:53
heartinside:http://ppt.cc/!Tpb 05/08 21:55
heartinside:參考一下檔案處理的部份吧^^ 05/08 21:56
意思就是我要先用curl抓全部後,再存成XML檔嗎? ※ 編輯: renmax 來自: 140.129.20.145 (05/08 22:17)
heartinside:疑...等等~我剛剛好像看錯了~我先測一下你的程式 05/08 22:23
heartinside:你在跑得時候有出現什麼錯誤訊息嗎? 05/08 22:25
renmax:完全沒出現什麼訊息 只有開啟存起來的xml檔才出現上面訊息 05/08 22:32
heartinside:可是我跑的時候有出現錯誤訊息耶XD 05/08 22:37
以下是我完整的程式碼 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Wikipedia Information</title> </head> <body> <form name=form1> <?php $xml = "http://zh.wikipedia.org/w/api.php?action=query&titles=漁人碼頭 &prop=info&inprop=url&format=xml"; echo "hahaha<br>" . "$xml" . "<br>"; $doc = new DOMDocument(); $doc->load("$xml"); $doc->save("C:\TWAMPd\htdocs\library.xml"); //xml檔儲存路徑 ?> </form> </body> </html> 用瀏覽器測試此php code無任何訊息出現,打開存起來的XML檔 用notepad++打開後,只出現 <?xml version="1.0"?> 這一行 若用瀏覽器打開,就會出現下面的訊息 XML 解析錯誤: 找不到元素 位址: file:///C:/TWAMPd/htdocs/library.xml 行號 2, 第 1 個字: ※ 編輯: renmax 來自: 140.129.38.219 (05/08 22:52)
heartinside:嗯...我抓到wiki那邊的xml了....你要用curl才能抓的到 05/08 22:49
heartinside:他們設user-agent的限制...沒這項資訊會被擋住.... 05/08 22:49
heartinside:http://pastie.org/3879260 剩下的就您自己處理囉~ 05/08 22:51
heartinside:加油^^ 05/08 22:51
renmax:好的 我會研究看看 由衷的謝謝您!! 05/08 22:53
bibo9901:啊我給的連結就有講啦 XD 05/08 23:06
renmax:h大 你的code中 echo get_data($xml);是印在瀏覽器上 還是 05/09 00:19
renmax:只能用原始檔看xml呢? 05/09 00:19
RedMapleWing:小弟淺見,他給你的程式碼不是把寫入的部份註解掉了 05/09 11:57
RedMapleWing:不對別理我…發現我沒搞清楚邏輯,抱歉 05/09 11:58