初来乍到,PHP setcookie怎么能正确使用?我写的代码只能设置两个中的一个,怎么办?

php中文网
发布: 2016-06-23 13:09:11
原创
1240人浏览过

 <?php   session_start();   $flag="true";   setcookie("flags",$flag,time()+3600);   $name=$_session['name'];   setcookie("uname",$name,time()+3600*24*30);  ?>
登录后复制


<!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>十六进制之火种</title><script type="text/javascript" language="javascript">flag="false";function getcookie(name){      var arr = document.cookie.match(new regexp("(^| )"+name+"=([^;]*)(;|$)"));      if(arr != null){       return unescape(arr[2]);       }else{       return null;      }  }   if(!getcookie("flags")){  alert('失败');  }else{ alert(getcookie("flags"));}			if(!getcookie("uname")){  alert('失败');  }else{ alert(getcookie("uname"));}    dell=getcookie("uname");	flag=getcookie("flags");function change(){	if(flag == "true"){        document.getelementbyid("benph").innerhtml=dell;		var hp='<a href="logout.php">退出</a>';		document.getelementbyid("lan").innerhtml=hp;		}else{		var huawei='<a href="denglu.html">登录1</a>';	var htc='<a href="register.php">注册1</a>';	document.getelementbyid("benph").innerhtml=huawei;	document.getelementbyid("lan").innerhtml=htc;				}		}	var iid =setinterval("change()",1000);</script></head><body><p id="benph"><a href="denglu.html">登录</a></p><p id="lan"><a href="register.php">注册</a></p></body></html>
登录后复制

360智图
360智图

AI驱动的图片版权查询平台

360智图 143
查看详情 360智图


回复讨论(解决方案)

   function getCookie(cookie_name)
{
    var allcookies = document.cookie;
    var cookie_pos = allcookies.indexOf(cookie_name);   //索引的长度
 
    // 如果找到了索引,就代表cookie存在,
    // 反之,就说明不存在。
    if (cookie_pos != -1)
    {
        // 把cookie_pos放在值的开始,只要给值加1即可。
        cookie_pos += cookie_name.length + 1;      //这里容易出问题,所以请大家参考的时候自己好好研究一下
        var cookie_end = allcookies.indexOf(";", cookie_pos);
 
        if (cookie_end == -1)
        {
            cookie_end = allcookies.length;
        }
 
        var value = unescape(allcookies.substring(cookie_pos, cookie_end));         //这里就可以得到你想要的cookie的值了。。。
    }
    return value;
}

你获取cookie的方法有问题,用这个吧

谢谢我试试!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号