2010-10-23 82 views
3

我正在嘗試修復其他人寫入的網站中的朋友的錯誤,並且遇到了這些錯誤之一的實際困難。有功能可以檢查用戶是否可以通過AJAX使用用戶名,響應是XML。但是,返回的XML中有一個錯誤。返回的XML響應具有空白

XML Parsing Error: XML or text declaration not at start of entity Location: moz-nullprincipal:{17ec3adb-5ee9-437a-b047-8910f6faa55c} Line Number 2, Column 1: 

<?xml version="1.0" encoding="UTF-8"?><ajaxResponse><cunamemsg>1</cunamemsg></aj... 
^ 

當我看到實際的響應,它看起來像這樣:

<?xml version="1.0" encoding="UTF-8"?><ajaxResponse><cunamemsg>1</cunamemsg></ajaxResponse> 

它的頂部有一個白線,我猜測是導致JS錯誤結合:

cunameresult.getElementsByTagName(

if(cunameresult.getElementsByTagName('cunamemsg').item(0).firstChild.data==0) 

說實話,我不知道還有什麼要檢查。我檢查了每個引用任何空格的PHP腳本。

PHP通知可能會導致返回的XML有額外的行嗎?有相當多的PHP通知和警告記錄在同一個腳本中,但它們指的是未初始化的變量。

非常感謝您的幫助,以及尋找解決方案的方向。

+2

什麼是生成XML的PHP​​源代碼?你確定在'<?php'之前沒有空行嗎? – 2010-10-23 12:48:29

+0

我打算說是的,但我三口之後檢查並找到一個需要的腳本後的空間。那浪費了一個小時!謝謝Pekka再次提示支票!也許你可以添加一個答案,所以我可以關閉這個問題! :) – Abs 2010-10-23 12:53:54

回答

6

確保您在打開<?php或包含的PHP腳本中的任何位置之前沒有空白區域 - 它也可以在XML結果中看到。

+0

謝謝,這將節省一些時間,我敢肯定! – Abs 2010-10-25 16:38:30