我正在尝试为其他人写过的网站中的朋友修正错误,而我正遇到其中一个错误。有功能可以检查用户是否可以通过AJAX使用用户名,响应是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通知和警告,但它们引用了未初始化的变量。
感谢大家对此的任何帮助以及寻找解决方案的方向。
答案 0 :(得分:6)
确保在开始<?php
之前或包含的PHP脚本中的任何位置没有空格 - 它也会在XML结果中显示。