【发布时间】:2015-06-17 15:21:12
【问题描述】:
我通过 post 发送值在 php 中设置了 cookie,但在重定向 cookie 上,它显示 cookie 未设置。
//username is just stored here for an example, it is not a good process to store credentials in cookie.
$('.loginDialogBtn').click(function() {
$usernameLogIn = $('#usernameLogIn').val();
var $passwordLogIn = $('#passwordLogIn').val();
$.post('authorizationAdmin.php', {
usernameLogIn: $usernameLogIn,
passwordLogIn: $passwordLogIn
}, function(data) {
var response = JSON.parse(data);
if (response['done'] === $usernameLogIn ) {
location.href = 'http://foodinger.in/Admin/home.php?restUsername=' + $usernameLogIn;
}
else {
$('.loginError').html('Incorrect Username and password');
}
});
});
php
if(isset($_POST['usernameLogIn']) && !empty($_POST['usernameLogIn']) && isset($_POST['passwordLogIn']) && !empty($_POST['passwordLogIn'])) {
$Username=strip_tags(trim($_POST['usernameLogIn']));
$password = strip_tags(trim($_POST['passwordLogIn']));
setcookie('username',$username, time() + (83600*30), "/Admin/", '.foodinger.in');
setcookie('restaurantId',$restId, time() + (83600*30), "/Admin/", '.foodinger.in');
}
点击登录按钮后,我可以看到浏览器中设置了 cookie,但我无法使用 $_COOKIE 获取它。
是否有任何可能导致错误的服务器设置?
更新 -- 我使用的是“walkme”,这导致了问题,一旦我删除了 walkme 并删除了所有 cookie,它就可以工作了。任何人都可以请 告诉我为什么“walkme”在获取我的 cookie 时会出现问题 变量
提前致谢
【问题讨论】:
-
你有没有这样尝试过:echo $_COOKIE['username']; ??
-
是的,我正在使用 $_COOKIE['restaurantId'],但它没有设置
-
检查点和斜线的域和路径,要读取 cookie,这些变量必须与写入 cookie 时完全相同。您的 php 文件还必须与 cookie 指向的文件夹位于同一文件夹中。出于调试目的,去掉路径和域,然后看看能不能拿到cookie。