javascript php 之间传递 中文 避免乱码

本文介绍如何确保JavaScript与Asp或PHP等后端程序之间的字符编码一致,以避免非英文字符集页面上的数据交互出现乱码问题。对于不同后端语言(如ASP与PHP),提供了具体的编码和解码函数。

在javascript代码中用encodeURIComponent()函数处理中文字符串, JS代码: <mce:script type=”text/javascript”><!--  string = encodeURIComponent(string);  location.href = index.php?keyword=’+string; // --></mce:script> PHP代码: <?php   $keyword = (isset($_GET['keyword'])) ? $_GET['keyword'] : '';  ?>  保证JavaScript和Asp、Php等后端程序间传值编码统一 在非英文字符集的页面上,如果使用Ajax方式进行数据交互的话, 就必须要注意保证前后端数据的统一编码,否则,很容易就出现乱码!  在后端是ASP程序的情况下,保持前端Javascript和Asp之间传值的统一编码可以使用以下函数进行处理: 

编码:escape(string)  解码:unescape(string)  这两个函数在JavaScript和Asp里都存在,而且功能完全一样, 只要任何一端向另一端传数据,都先用escape进行编码, 接收的一端用unescape进行解码即可保证Javascript和Asp数据传递过程中不会出现乱码! 

在后端是PHP程序的情况下,保持前端Javascript和PHP之间传值的统一编码可以使用以下函数进行处理:  WEB前端JavaScript  编码:encodeURI(string)  解码:decodeURI(string)  WEB后端Php  编码:urlencode(string)  解码:urldecode(string)  同样,传值的时候使用相应的编码函数encodeURI或urlencode, 接收的时候使用相应的解码函数decodeURI或urldecode, 即可保证Javascript和Php数据传递过程中不会出现乱码!  在WEB前端Javascript解码,Php里urlencode编码的数据时,可能需要使用两次解码,如:  unescape(decodeURI(string))  unescape用来解一些非字符类的文字,如标点符号等等。

转载于:https://www.cnblogs.com/bulemaple/articles/2824810.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值