![](/img/trans.png)
[英]HTML form with spanish characters displayed wrong in MySQL database
[英]Show spanish characters in a form
我有一个表单,在文本区域中,我想显示一些具有一些西班牙字符但编码为html的文本。 问题在于,它显示的是html代码而不是西班牙字符。 我正在使用htmlentities在表单中显示它。 我要显示的代码是:
<?php echo htmlentities($string, ENT_QUOTES, "UTF-8") ?>
任何想法还是我不应该以某种形式使用htmlentities? 谢谢!
编辑说$string = 'á'
当我只执行<?php echo $string ;?>
我得到á
如果我做了<?php echo htmlentities($string, ENT_QUOTES, "UTF-8") ?>
我会得到á
我很混乱!
如果我对您的理解正确,则需要使用...
<meta charset="utf-8">
在页面标题中,然后...
<?php echo html_entity_decode($string, ENT_QUOTES); ?>
这会将您的HTML实体转换回其正确的字符
您可以尝试在文件顶部显式添加内容类型,如下所示
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
如果已经将其编码为html,则需要立即对其进行解码。.您可以使用html_entity_decode html_entity_decode($string);
您要在表单中回显的字符串应为á
从数据库中,而不是返回á
$string = 'á'; // your string as fetched from database
echo html_entity_decode($string);// this will display á in the textarea
在保存到数据库之前,您需要
htmlentities($_POST['txtAreaName'], ENT_QUOTES, "UTF-8"); // return `á`
您可能正在寻找htmlspecialchars。
echo htmlspecialchars('<á>', ENT_COMPAT | ENT_HTML5, "UTF-8");
输出<á>
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.