我可以在PHP5中使用动态cookie名称吗
对于我们的网站,访问者必须填写表格才能访问。这将设置一个cookie,以便他们不必为相同的访问多次填写表单。然而,如果他们试图访问网站的另一部分,他们就会失去以前的访问权限。我们没有在cookie中存储任何登录信息 这些是我们目前使用和工作的内容:我可以在PHP5中使用动态cookie名称吗,php,session,cookies,Php,Session,Cookies,对于我们的网站,访问者必须填写表格才能访问。这将设置一个cookie,以便他们不必为相同的访问多次填写表单。然而,如果他们试图访问网站的另一部分,他们就会失去以前的访问权限。我们没有在cookie中存储任何登录信息 这些是我们目前使用和工作的内容: setcookie('oursite_Bids', $_SESSION['bidnumber'], time()+2764800, "/", ".oursite.com", 0); setcookie('Bid_Access_Form', $_S
setcookie('oursite_Bids', $_SESSION['bidnumber'], time()+2764800, "/", ".oursite.com", 0);
setcookie('Bid_Access_Form', $_SESSION['docs'], time()+2764800, "/", ".oursite.com", 0);
这是我们试图使cookie动态化,但这两种方法都不起作用:
setcookie($bidnumber, $_SESSION['docs'], time()+2764800, "/", ".oursite.com", 0);
setcookie($_SESSION['bidnumber'], $_SESSION['docs'], time()+2764800, "/", ".oursite.com", 0);
有没有一种方法可以正确地执行此操作,或者像我现在做的那样,我是被迫按cookie的设置名称来调用cookie的?您正在为会话重新发明轮子。不要那样做 使用定期会议:
session_start();
$_SESSION['oursite_Bids'] = 'whatever you want';
正确答案是:
$bidnumber = $_SESSION['bidnumber'];
$cookiename = str_replace(' ', '_', $bidnumber);
setcookie($cookiename, $_SESSION['docs'], time()+2764800, "/", ".oursite.com", 0);
我上面使用的一个不起作用,因为$bidnumber
的值包含一个空格字符
谢谢大家的意见。谢谢您的回复。然而,我不认为我是在“为会议重新发明轮子”,因为我们大量使用会议。但有了cookie,我们可以让他们获得并跟踪多个出价。使他们能够在为每个人设定的时间范围内返回到每个人。每个出价必须单独管理,我们相信,如果cookie名称可以是出价编号,cookie将允许我们这样做。不管是对是错,只要我们能让它按我们想要的方式工作,这可能非常方便。@DougGammon为什么不在会话数据中跟踪每个出价?远比直接使用cookie简单。您能显示一些$bidnumber值和一些$\u会话['docs']吗?