表单:将数据UTF8传递到另一个页面


Form: passing data UTF8 to another page

我从页面A发布($_POST[])数据,并尝试在页面B上输出它,但是UTF8不起作用。

B页的数据(我相信)不在UTF8中,例如é变为?。如果我在B页使用utf8_encode,它就又好了。

棘手的部分是mb_detect_encoding()确实返回UTF-8的数据从POST

页B

在A页,我将所有页眉设置为UTF8

header("Content-Type: text/html; charset=utf-8");
<meta charset="utf-8">

在我的mysql连接之后

mysqli_set_charset($mysqli, "utf8");

A页的表单有

accept-charset="UTF-8"

和页面B是用Ajax加载的,并且在

上也有标头

我错过了什么吗?或者我应该总是使用utf8_encode()POST的数据?

您可以在Config页面本身添加代码accept-charset="UTF-8"。所以它会在你需要的所有页面中使用

传递数据从页A到B,你使用json_encode吗?这个函数专门用于编码为utf-8

的数据