我有一个带有表单的php页面,其中我有一个复选框,用户可以选中在浏览器下次登录时选择记住字段。我正在使用该代码:
if(rememberCheck.checked==true){
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var cod_value=escape(codice.value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie="cod=" + cod_value+";log="+login.value;
}
function getCookie(c_name){
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++){
x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
x=x.replace(/^\s+|\s+$/g,"");
if (x==c_name){
return unescape(y);
}
}
}
function checkCookie(){
var cod=getCookie("cod");
var username = getCookie("login");
if (username!=null && username!="" && cod!=null && cod!=""){
var usn = document.getElementsByName('usn')[0];
var codice = document.getElementsByName('codice')[0];
usn.value=username;
codice.value=cod;
}
}
问题在于,当我读取cookie时,它会读取PHPSESSID = XXXXXX,而不是我写的内容。我能做什么?你能救我吗?
答案 0 :(得分:4)
你也可以用php做到这一点 在登录时,如果用户选中“记住我”,那么在php上 你可以这样做
&lt;?php
if(isset($ _ POST ['rem_me'])&amp;&amp; $ _POST ['rem_me'] =='on')
{
setcookie(“code”,$ value,time()+(3600 * 24 * 30 * 12)); //设置你的cookie>}?&gt;
是否有任何理由只想用javascript进行操作?
答案 1 :(得分:0)
<?php
if( isset($_POST['rem_me'])){
if($_POST['rem_me']=='on'){
setcookie ("remember", $value, time()+360000);
}
}
?>
答案 2 :(得分:-1)
为什么不使用jquery $ post在服务器上设置PHP cookie,它们比js cookies更容易使用