gpt4 book ai didi

php - 当用户通过 facebook 使用连接时无法从网站注销用户

转载 作者:行者123 更新时间:2023-11-29 13:50:25 24 4
gpt4 key购买 nike

好吧,我编写了一个代码,将用户连接到我的数据库,然后我设置为该用户的登录名,如果电子邮件已经在数据库中,我只需登录用户...

问题是注销按钮不起作用..我已经尝试过了。

session_start(); 
session_destroy();

在注销时,但一旦重定向到索引页面,(我认为再次登录)

我怎样才能避免这种情况..

编辑:我不希望用户从 Facebook 注销。刚刚从我的网站注销

这是我的代码。

<?php
if ($userId) {
//
// already logged? show some data
$userInfo = $facebook->api('/' + $userId);





if (isset($userInfo['email']))

{ include "facebookregister.php"; } else { echo "no hay permisos de facebook"; }

} else {
//
// use javaascript api to open dialogue and perform
// the facebook connect process by inserting the fb:login-button
?>
<div id="fb-root"></div>
<fb:login-button scope='email,user_birthday'></fb:login-button>
<?php
}
?>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : <?=YOUR_APP_ID?>,
status : true,
cookie : true,
xfbml : true,
oauth : true,
});



FB.Event.subscribe('auth.login', function(response) {
// ------------------------------------------------------
// This is the callback if everything is ok
window.location.reload();
});
};

(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
</script>

还有注销。

function logout_action()
{
$srv_nms=BASE;
$srv_nms=str_replace("http://","",$srv_nms);
$srv_nms=str_replace("https://","",$srv_nms);
$srv_nms=str_replace("www.","",$srv_nms);


$srv_pats=$srv_nms;

$srv_nms_arr=explode("/",$srv_nms);
$srv_nms=$srv_nms_arr[0];


$srv_pats=str_replace($srv_nms."/","",$srv_pats);


setcookie(COOKIE_LOGINID,"",0,"/".$srv_pats,$srv_nms);
setcookie(COOKIE_USERNAME,"",0,"/".$srv_pats,$srv_nms);
setcookie(COOKIE_PASSWORD,"",0,"/".$srv_pats,$srv_nms);

session_start();
session_destroy();

header("Location: ".$this->make_url("user/login/l"));
die;
}

最佳答案

我想我会使用cookie。注销后,设置一个 cookie 告诉您已请求注销。然后在主页上,在从 facebook API 获取数据之前,检查 cookie。显然,您必须在登录时覆盖 cookie 或使 cookie 过期...但这应该可以为您解决问题。

关于php - 当用户通过 facebook 使用连接时无法从网站注销用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16756337/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com