所以我有一个我知道设置正确的 cookie(使用 firefox 获取页面信息),我不断收到错误/警告“注意: undefined index :”。我正在使用 $_COOKIE['username'];
访问 cookie,当我执行 if(isset($_COOKIE['username']))
时,代码不会运行。但是我可以在 firefox 中看到未过期的 cookie 获取页面信息。仅供引用,这是我设置的 cookie 代码:setcookie('username', $username, time()+3600*24);
最佳答案
您可能在一个 php 文件中定义 cookie,该文件位于您调用 isset 的 php 文件的不同文件夹中。
因此添加“/”作为 cookie 的默认文件夹使其可用于整个网站。
有时,您不希望发生这种情况,因为您可能希望根据所在的文件夹拥有两个名称相同但值不同的 cookie。
示例:一个有 2 种语言的网站,您可以有 $_COOKIE['language'] = 'en';
在/en/
文件夹并有$_COOKIE['language'] = 'fr';
在/fr/
文件夹。
因此,当您在未指定其目录的情况下设置 cookie 时,您必须记住,它仅对同一文件夹或子文件夹中的文件可用。
关于php - 通知 : Undefined index: when calling a cookie that is set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11841452/