从一个页面到另一个页面的字符集问题

时间:2010-09-15 17:52:42

标签: php html database forms character-encoding

我遇到了以下问题。

在一个带有表单user_report.php的页面上,所有字符如'ç'或'ã'都正确显示。

现在提交数据时,任何带有这些字符的内容都会被显示/转移到第二页“result.php”,这一切都是错误的,例如:'Restauração'get'被转移为'Restauração'。

任何提示?

1 个答案:

答案 0 :(得分:0)

您需要在所有网页上使用相同的HTML字符集。确保您的两个页面都有:

<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <!-- all of your other head tags go here, after the charset is specified -->
</head>

表单中提交的数据将包含在标记中指定的任何字符集中。如果该字符集与第二页上使用的字符集不匹配,那么您将遇到您描述的错误。

如果您没有指定任何字符集,那么浏览器会尝试猜测并且通常会猜错。

只要两个页面使用相同的字符集,您使用的字符集并不严格。但是utf-8通常是最好的选择。

PS:还有一些其他因素可能导致您遇到的错误,但我刚刚回答的是最常见的解决方案。如果它不起作用,请发布您用来从数据库中获取内容的代码并将其发送到浏览器。