解决javascript向PHP传递中文乱码的问题

2023-05-06,,

小编给大家分享一下解决javascriptPHP传递中文乱码的问题,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

javascript向PHP传递中文乱码的解决方法:首先在javascript代码中用【encodeURIComponent()】函数处理中文字符串;然后保证JavaScript和Asp、Php等后端程序间传值编码统一即可。

javascript向PHP传递中文乱码的解决方法:

在javascript代码中用encodeURIComponent()函数处理中文字符串,

JS代码:

<script type=”text/javascript”>
string = encodeURIComponent(string);
location.href = index.php?keyword=’+string;
</script>

PHP代码:

<?php
$keyword = (isset($_GET['keyword'])) ? $_GET['keyword'] : '';
?>

保证JavaScript和Asp、Php等后端程序间传值编码统一

在非英文字符集的页面上,如果使用Ajax方式进行数据交互的话,就必须要注意保证前后端数据的统一编码,否则,很容易就出现乱码!

在后端是ASP程序的情况下,保持前端Javascript和Asp之间传值的统一编码可以使用以下函数进行处理:

编码:escape(string)

解码:(string)

这两个函数在JavaScript和Asp里都存在,而且功能完全一样,只要任何一端向另一端传数据,都先用escape进行编码,接收的一端用进行解码即可保证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编码的数据时,可能需要使用两次解码,如:(decodeURI(string)),用来解一些非字符类的文字,如标点符号等等。

看完了这篇文章,相信你对解决javascript向PHP传递中文乱码的问题有了一定的了解,想了解更多相关知识,欢迎关注本站行业资讯频道,感谢各位的阅读!

《解决javascript向PHP传递中文乱码的问题.doc》

下载本文的Word格式文档,以方便收藏与打印。