我将 MySQL 数据库中的XML文件内容保存为:
$content = mysql_escape_string($content);
$insert = mysql_query("insert into $db_table_xml (url,content) values ('$url','$content')" );
//content type : TEXT in MySQL
simplexml_load_string($content);
它会返回错误:
警告:simplexml_load_string() [function.simplexml负载字符串]: 实体:第361行:解析器错误: AttValue:'预期在 d:\ MKW \ dev的\网络\ PHPnow-1.5.6 \ htdocs中\ YT2 \的common.php 第84行
注意:试图获得属性 非对象 d:\ MKW \ dev的\网络\ PHPnow-1.5.6 \ htdocs中\ YT2 \的common.php 第146行
警告:提供的参数无效 foreach()in d:\ MKW \ dev的\网络\ PHPnow-1.5.6 \ htdocs中\ YT2 \的common.php 第146行
答案 0 :(得分:0)
此错误表示它无效xml,请检查xml文件以查看它是否有任何错误。
查找其中的第361行,可能存在特殊字符或类似错误
编辑。
显然,当你转义xml时,你在xml中引入了无效字符,
使用。
$content_escape = mysql_escape_string($content);
$insert = mysql_query("insert into $db_table_xml (url,content) values ('$url','$content_escape')" ); //content type : TEXT in MySQL
现在您的$内容不受影响
答案 1 :(得分:-1)
在我看来,你的变量$ content包含影响字符串终止的单引号。如果是这种情况,这就是你可以做的事情:
$content= addslashes($content);
然后你把它写进你的记录。