繁体   English   中英

使用UTF-8在DB中存储HTML /特殊字符

[英]Storing HTML / special characters in DB with UTF-8

我正在修改我的网站使用UTF-8编码,这证明有点痛苦。 这是我到目前为止所做的:

1) <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

2) mysql_set_charset("utf8");

3)将数据库,表和列的字符集设置为utf8

现在我在一个字段中有一些数据,其内容是(确切的形式):

<p>Tom & Jerry £5</p>

将此数据输出到页面后,所有内容在视觉上都显示正确。 但是,在进行HTML验证检查时,它会在&符号上失败,因为它未被更改为&amp;

现在我试图通过使用htmlentities()来解决这个问题,但是这会对所有内容进行编码,包括HTML P标记的尖括号。 所以它看起来不正确。 此外,英镑符号出现在它前面有一个奇怪的字符。

我的问题是,我是否正确地将数据存储在数据库表中? 如果是这样,我需要做些什么来确保所有显示和验证都正确?

在网页中输出UTF-8文本时,请使用htmlspecialchars而不是htmlentities

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM