解决php5+mysql5.1.1+html+javascript之间的编码问题
2006-08-25 19:14
447 查看
首先要确定搭配为php5+mysql5.1.1+apache2.2.3,因为其他没有测试。
php5+mysql5.1.1+html+javascript之间搭配其实最重要的还是要看javascript。因为javascript传值用的是utf-8,所以在页面编码为gb2312传递中文的时候可能会出问题。基于这点考虑,我们就将这里面所有的编码都设置为utf8。
mysql设置很简单,只要在创建数据库的时候指定为utf8就好了。
php文件中,在查询数据库的时候要在mysql_db_query或者mysql_query之前加上mysql_query("SET NAMES utf8");在要生成的html中的<head></head>之间加上<meta http-equiv="Content-Type" content="text/html" charset="utf-8" />。
在javascript向服务器提交中文参数的时候要用encodeURIComponent ()函数。例如:
function InitSelectName()
{
var select_name=document.getElementById("select_name");
select_name.onchange=function (){StartRequest("selectbelongings.php?user_id="+encodeURIComponent (this.options[this.selectedIndex].value));}
}
大家可以参考文章http://blog.terac.com/andy/e_181.html。
最后还有一步,是在网上看到的,就是所有的网页文件保存的格式一定要是utf8编码的。
补充:对于utf8编码要注意,要保存为utf8无标记格式。有一种utf8有标记格式会对php解析产生扰乱。高级的代码编辑器都可以选。而记事本默认的就是有标记的utf8,不能用。
我按照这套步骤试验了几次都没有问题。ie6,ff1.5均通过。
php5+mysql5.1.1+html+javascript之间搭配其实最重要的还是要看javascript。因为javascript传值用的是utf-8,所以在页面编码为gb2312传递中文的时候可能会出问题。基于这点考虑,我们就将这里面所有的编码都设置为utf8。
mysql设置很简单,只要在创建数据库的时候指定为utf8就好了。
php文件中,在查询数据库的时候要在mysql_db_query或者mysql_query之前加上mysql_query("SET NAMES utf8");在要生成的html中的<head></head>之间加上<meta http-equiv="Content-Type" content="text/html" charset="utf-8" />。
在javascript向服务器提交中文参数的时候要用encodeURIComponent ()函数。例如:
function InitSelectName()
{
var select_name=document.getElementById("select_name");
select_name.onchange=function (){StartRequest("selectbelongings.php?user_id="+encodeURIComponent (this.options[this.selectedIndex].value));}
}
大家可以参考文章http://blog.terac.com/andy/e_181.html。
最后还有一步,是在网上看到的,就是所有的网页文件保存的格式一定要是utf8编码的。
补充:对于utf8编码要注意,要保存为utf8无标记格式。有一种utf8有标记格式会对php解析产生扰乱。高级的代码编辑器都可以选。而记事本默认的就是有标记的utf8,不能用。
我按照这套步骤试验了几次都没有问题。ie6,ff1.5均通过。
相关文章推荐
- PHP页面 数据库之间的编码问题解决
- 【转自loveifa】PHP 获取邮箱未读邮件的方法 根据receivemail改编而来,已解决乱码,编码问题
- [置顶] 解决PHP生成UTF-8编码的CSV文件用Excel打开乱码的问题
- php编码的问题及解决办法
- spring框架使用Filter配置解决页面与后台之间编码问题
- PHP pdo编码乱码问题的解决方法
- 依赖注入的威力,.NET Core的魅力:解决MVC视图中的中文被html编码的问题
- 解决PHP生成UTF-8编码的CSV文件用Excel打开乱码的问题
- Asp.net MVC 3 Razor 视图引擎 中使用@输出的内容都会被自动进行HTML编码 问题的解决办法
- resin服务下访问静态html页面时默认编码总为iso-8859-1的问题解决办法
- PHP传值到不同页面的三种常见方式及php和html之间传值问题
- php5.4以上版本GBK编码下htmlspecialchars输出为空问题解决方法汇总
- php与javascript之间变量引用问题
- 使用HtmlAgilityPack和ScrapySharp抓取网页数据遇到的几个问题解决方法——格式编码问题
- SwfObject解决Html与Flash之间传递参数问题
- PHP & Javascript 如何对字符串中包含html标签进行编码 整理
- 【web开发】HTML\CSS\JavaScript与PHP\ASP\JSP之间的区别
- PHP 页面编码声明方法详解(header或meta,解决中文乱码问题)
- Php+MYSQL中文编码问题解决全过程
- 解决PHP 编码中文返回时为null的问题