[英]PHP error in doing xml parsing?
我正在用PHP工作。 我想创建查询结果的xml。
我的查询结果中有许多网址。 当我想创建这些URL的xml文件时,由于空格和URL中的一些特殊字符而发生了问题。
如果我为URL中没有空格的URL尝试相同的事情,则不会发生任何问题。
这是我的php程序:
$rs = mysql_query("SELECT urlofsong FROM music ORDER BY date DESC LIMIT 0,10") or die ("invalid query");
//count the no. of columns in the table
$fcount = mysql_num_fields($rs);
//you can choose any name for the starting tag
//echo "$pass";
echo ("<result>");
while($row = mysql_fetch_array( $rs ) )
{
echo ("<tablerow>");
for($i=0; $i< $fcount; $i++)
{
$tag = mysql_field_name( $rs, $i );
echo ("<$tag>". $row[$i]. "</$tag>");
}
echo ("</tablerow>");
}
echo ("</result>");
这些类型的条目会在url中产生问题:-“ http://192.168.1.214/MusicApplication/Songs/RUFF BEAT-Baby_Justin Bieber_DJs Sunny&Puneet(VT).mp3”
注意:-请参阅文件名。
请建议我该怎么做才能解决此类问题。
您可能应该通过用%20替换空格来转义文件名。 或者只是在文件名上使用urlencode()。
另外,请使用htmlspecialchars转义行内容,否则可能会得到无效的XML。
这是解决我的问题的方法... echo(“” .htmlentities($ row [$ i])。“”);
意味着我们应该从htmlentities()传递数据。 通过使用此功能,我们可以将特殊字符转换为html字符。
谢谢你们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.