ecshop的ucenter同步登陆uc.php 一点错误勘误
文件在 /api/uc.php 搜索 set_cookie
复制代码代码如下:
function set_cookie($user_id=”, $user_name = ”, $email = ”)
{
if (empty($user_id))
{
$time = time() – 3600;
setcookie(‘ECS[user_id]‘, ”, $time);//这里有问题
setcookie(‘ECS[username]‘, ”, $time);//这里有问题
setcookie(‘ECS[email]‘, ”, $time);//这里有问题
}
else
{
$time = time() + 3600 * 24 * 30;
setcookie(“ECS[user_id]“, $user_id, $time, $GLOBALS['cookie_path'], $GLOBALS['cookie_domain']);
setcookie(“ECS[username]“, $user_name, $time, $GLOBALS['cookie_path'], $GLOBALS['cookie_domain']);
setcookie(“ECS[email]“, $email, $time, $GLOBALS['cookie_path'], $GLOBALS['cookie_domain']);
}
}
因为假设这样的架构
http://域名/ 是 ecshop ,http://域名/bbs/ 为论坛dzX2, 那么,在ec登陆后,dzX2 点退出,
会发送一个javascript申请到 /api/uc.php的 logout请求 ( 如果setcookie 只是在 /bbs/ 下 设置cookie 为空,那么就清空不了cookie
严格的应该是
setcookie('ECS[user_id]', '', $time,$GLOBALS['cookie_path'], $GLOBALS['cookie_domain']);
那么代码可以修改为
还有要修改ecshop的 ucenter插件,ncludes/modules/integrates/ucenter.php
如图两部分
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341