我只是通过 HTML 表单调用一个简单的 PHP 脚本。
每次都会抛出错误: “未声明 HTML 文档的字符编码。如果文档包含 US-ASCII 范围之外的字符,则在某些浏览器配置中,文档将呈现乱码。页面的字符编码必须为在文档或传输协议中声明”
我已经将 PHP 和 HTML 中的编码都定义为 UTF-8(请参阅下面的代码)。尽管搜索了整个网络,但我无法解决这个问题。
HTML 代码:
<head>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8">
<meta content="UTF-8" http-equiv="encoding"/>
<title>Test</title>
</head>
<body>
<div align="center">
<form action= "google1.php" method="get" accept-charset="UTF-8" >
Enter Your Name:
<INPUT TYPE = "text" NAME = "student"> <BR>
<!--input name="q" type="text"-->
<br/ >
<input name="btnG" type="submit" value ="test">
</form>
</div>
</body>
PHP 代码
header("Content-type: text/html; charset=UTF-8");
print "<pre>";
print_r($_GET);
print "</pre>";
提交按钮后的结果(连同错误)是:
"; print_r($_GET); 打印 ""; ?>
我正在使用 XAMPP。我尝试按照互联网上的一些解决方案中的建议编辑.htaccess(添加:AddType 'text/html; charset=UTF-8' html),但这也无济于事。
我找到了一个站点,其中有一个简单的表单,它再次调用 PHP 脚本。http://www.tjhsst.edu/~dhyatt/superap/form1.html。当我尝试在表单中提交值时,我得到了同样的错误。
所以我想,这可能是浏览器问题,我将浏览器的默认编码更改为 UTF-8。但这也无济于事。
我是网络编程的新手并正在努力学习。感谢任何人可以提供帮助。
谢谢,阿舒托什