这个问题解决了,查看我的回答看看解决方案
我正在尝试通过 html 表单向我的数据库添加带有重音字母的文本,该表单通过 POST 提交到 PHP 页面,问题是重音字母被转换为不可读的字符。
我有这个表格:
<form action="page.php" method="POST">
<input type="textarea" id="text1" name="text1" />
<input type="submit" value="Send" />
</form>
然后,在 page.php 中:
echo $_POST['text1'];
问题是,如果我àèìòù
在 textarea 中输入然后提交表单,我会得到以下输出:
à èìòù
我的下一步是将重音字母转换为 html 实体,htmlentities($_POST['text1']
但我需要$_POST
给我正确的字母。
注意:在我已经拥有的页眉中
<meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" />
我怎样才能解决这个问题?
编辑
我试过了
<form action="page.php" method="POST" accept-charset="UTF-8">
<input type="textarea" id="text1" name="text1" />
<input type="submit" value="Send" />
</form>
它并没有解决它
编辑 2
也尝试添加
<meta charset='utf-8'>
到我的文件头上,它不起作用
编辑 3
我也尝试在第二页上将我的字符集设置为 UTF-8,并且
echo $_POST['text1'];
显示了正确的结果。
我看到问题出在我使用 htmlentities 时,使用此代码
echo htmlentities($_POST['text1']);
我明白了
à èìòù
实际输出
à èìòù
即使我也在我的元标记和标题中设置了字符集。有谁知道我该如何解决?