//写入Cookie
$username="中文编码";
$username=mb_convert_encoding($username,"UTF-8","GB2312"); //因为 此文件为ascii 编码
//$username=iconv("GB2312","UTF-8",$username);
$username=urlencode($username); //这个 函数出来的 结果 与 js cookie
setcookie('testname',$username,time()+3600);
//读取
//document.write( document.cookie);
document.writeln(decodeURI("<?= $username ?>")) ;
document.writeln(GetCookie("testname")) ;
function GetCookie(cookieName){
var cookieString = document.cookie;
//return cookieString;
var start = cookieString.indexOf(cookieName + '=');
if (start == -1)
return null;
start += cookieName.length + 1;
var end = cookieString.indexOf(";", start);
if (end == -1)
return decodeURI(cookieString.substring(start));
//return unescape(cookieString.substring(start));
return decodeURI(cookieString.substring(start, end));
//return unescape(cookieString.substring(start, end));
}
或者简单一点:
escape
decodeURIComponent
需要用decodeURIComponent函数对cookie读取的中文进行处理就可以了.
如:username = decodeURIComponent(escape(username));
分享到:
相关推荐
js 中存取 cookie 解决中文乱码
本文将详细介绍如何解决JS中Cookie中文乱码的问题。 首先,我们需要理解Cookie的设置过程。在JS中,设置Cookie通常通过`document.cookie`属性来完成。下面是一个简单的设置Cookie的例子: ```javascript function ...
在Web开发中,"Cookie实现记住密码及解决中文乱码"是常见的用户交互功能,它涉及到客户端和服务器端的数据交换。下面将详细讲解这个主题。 首先,Cookie是Web服务器发送到用户浏览器并存储的一小块数据,用于在多次...
总结来说,处理JavaScript中的中文cookie乱码问题,关键是选择正确的函数对字符进行编码和解码。使用`decodeURI()`来替代`unescape()`函数,能够有效解决读取中文cookie时的乱码问题。同时,在写入中文字符到cookie...
在Cookie的使用中,我们发现这样一个问题:如果写入Cookie的内容是中文(如用户称呼),用服务器端程序(如ASP或PHP)读出完全正确,但是用一般的javascript或VBScript的读Cookie函数取出的却是一堆乱码。...
如果数据包含中文或其他非ASCII字符,使用`encodeURIComponent()`函数进行URL编码,避免在传输过程中出现乱码。 ```javascript let data = { username: "张三", message: "你好,世界!" }; let encodedData = ...
当存储或读取包含中文字符的Cookie时,必须确保编码的一致性,否则可能会出现乱码。 3. **JSP与Servlet**:JSP(JavaServer Pages)是动态网页技术,而Servlet是Java Web中的后端处理组件。在本例中,JSP用于创建...
UTF-8编码是一种常见的Unicode实现,它使用1到4个字节来表示每个Unicode字符,对于中文汉字,通常每个字占用3个字节。因此,当Ajax发送或接收UTF-8编码的数据时,理论上不应出现乱码。 然而,乱码问题可能源于以下...
ASP.NET中的Cookie管理和JavaScript操作Cookie是Web开发中的基础技能,特别是在处理中文字符时,需要特别注意编码问题。本文将深入探讨如何在ASP.NET环境下创建包含中文的Cookie,并使用JavaScript进行读取。 首先...
一开始以为是cookie中文乱码的问题,后来跟踪发现,cookie的值压根就没赋值成功,网上查了资料,发现safari不允许非ASCII编码的值,换句话说:不允许中文存储。 为了解决这个问题,在设置cookie值的时候必须先编码,...
在使用AJAX技术时,经常会发生字符编码问题,特别是中文乱码问题。由于JavaScript默认使用UTF-8编码,而服务器端的页面也可能采用不同的编码,如GBK或GB2312,这就导致了在AJAX通信过程中,客户端发送的数据到服务器...
这里使用了`encodeURIComponent`函数来对包含中文和其他特殊字符的数据进行编码,避免在存储过程中出现乱码问题。 2. **获取Cookie**:所有Cookie都是以分号和空格分隔的形式存储在一起的。当我们调用`document....
在Web开发中,Ajax(异步JavaScript和XML)技术被广泛应用于实现页面的无刷新更新,然而,与之相伴的一个常见问题是字符编码导致的乱码现象。本文将深入探讨Ajax乱码问题的成因及其解决方案。 首先,我们需要了解...
在使用jQuery的AJAX方法进行数据交互时,有时会遇到中文字符乱码的问题。这是因为浏览器、服务器和前端之间编码不一致导致的。本文将详细解释这个问题,并提供有效的解决方案。 首先,我们要理解AJAX(Asynchronous...
3. 如果JavaScript设置的Cookie值包含中文等特殊字符,当使用JavaScript读取时,建议使用`decodeURIComponent(escape(value))`函数进行编码的逆转,以避免出现乱码。 4. 当PHP读取由JavaScript设置的中文Cookie时,...
Node.js 是一个基于Chrome V8引擎的JavaScript运行环境,它允许开发者在服务器端使用JavaScript进行编程。在Web开发领域,Node.js因其高效的I/O处理和非阻塞I/O模型而受到广泛欢迎。在给定的标题和描述中,我们关注...
- 在涉及客户端与服务器端编码转换的JavaScript函数中,正确使用`encodeURI`或`encodeURIComponent`进行编码,避免重复编码导致的乱码问题。在上述代码中,`encodeURI`被错误地调用了两次。 ```javascript ...