我试图通过htmlspecialchars
推送所有博文,以确保所有字符都能正确显示。
但是一旦被处理(从数据库中提取数据时调用它们,而不是在推送时),它们不会显示为字符!
只是他们的重复代码出现了。
以下是我如何获取数据:
<?php
while($result = mysql_fetch_array( $results )
{
echo "
<div class=\"post\"><article>
<a href=\"//blog.jacoblukewood.com/p/" . $result['id'] . "\"><h3 class=\"posttitle\">" . htmlspecialchars($result['title']) . "</h3></a>
<div class=\"postcontent\">
<p>";
if (strlen($result['content']) > 300)
{
echo nl2br(htmlspecialchars(substr($result['content'],0,300))) . "… " . "<a href=\"//blog.jacoblukewood.com/p/" . $result['id'] . "\">Continue Reading</a>";
}
else
{
echo nl2br(htmlspecialchars(substr($result['content'],0,300)));
}
echo "</p>
</div>
</article>
<div class=\"poststats\">
<a href=\"//blog.jacoblukewood.com/p/" . $result['id'] . "#disqus_thread\"></a><a> • By " . $result['poster'] . " • On " . htmlspecialchars(substr($result['timestamp'],0,10)) . " • </a><a href=\"//blog.jacoblukewood.com/t/" . $result['topic'] . "\">" . htmlspecialchars($result['topic']) . "</a><br /></div>
</div>";
}
?>
它显示如下:
Yay it's working!!
Everything seems good, comments, url's, random colours etc!
我的网站是jacoblukewood.com 另外,在将其推送到数据库之前,我应该使用htmlspecialchars吗?
答案 0 :(得分:0)
如果您已经在数据库中编码了字符,请尝试使用http://www.php.net/manual/en/function.htmlspecialchars-decode.php,这将为您扭转此过程。