资料用js json encode 记在cookie, php读cookie json decode不能用js把资料以数组储存,然后用json encode放入cookie,但php json decode不到原本的资料出来,请问怎解决
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JS JSON ENCODE, PHP JSON DECODE</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://jquery-json.googlecode.com/files/jquery.json-2.2.min.js"></script>
<script type="text/javascript" src="jq.cookie.js"></script>
<!--
jquery cookie plugin from
http://plugins.jquery.com/project/cookie
-->
</head><body>
<script type="text/javascript">
$(document).ready(function(){var jemail;
if(jemail=$.cookie('jemail')){
var list="read cookie\n";
jemail=$.evalJSON(jemail);
for(var i=0;i<jemail.length;i++){
list+=jemail[i].id+" - "+jemail[i].email+"\n";
}
alert(list);
}
else{
var list="write cookie\n";
jemail=[];
jemail.push({'id':1,'email':'[email protected]'});
jemail.push({'id':2,'email':'[email protected]'});
jemail.push({'id':3,'email':'[email protected]'});
for(var i=0;i<jemail.length;i++){
list+=jemail[i].id+" - "+jemail[i].email+"\n";
}
$.cookie('jemail',$.toJSON(jemail));
alert(list);
}
});
/*
document.addEvent('domready',function(){
var jemail;
if(jemail=Cookie.read('jemail')){
var list="read cookie\n";
jemail=JSON.decode(jemail);
for(var i=0;i<jemail.length;i++){
list+=jemail[i].id+" - "+jemail[i].email+"\n";
}
alert(list);
}
else{
jemail=[];
jemail.push({'id':1,'email':'[email protected]'});
jemail.push({'id':2,'email':'[email protected]'});
jemail.push({'id':3,'email':'[email protected]'});
Cookie.write('jemail',JSON.encode(jemail));
alert('write cookie');
}
});*/
</script><?php
if($_COOKIE['jemail']){
echo 'cookie value<br>';
echo $jemail=$_COOKIE['jemail'];
echo '<br><br>json decode<br>';
echo json_decode($jemail);
}
?>
<input type="button" onclick="$.cookie('jemail', null); " value="clear cookie" />
</body>
</html>