Php 确定用户是否使用Facebook或网站登录?

Php 确定用户是否使用Facebook或网站登录?,php,facebook,facebook-graph-api,Php,Facebook,Facebook Graph Api,在该网站上,将有两种登录方式-facebook登录或网站标准登录 确定用户是否使用facebook或网站登录的正确方法是什么 我正在考虑在users表中添加一个名为login\u type的字段 值将为“facebook”或“标准” 如果用户通过facebook登录,则在会话中存储login\u type的值,例如$\u会话['login\u type']=“facebook” 然而,若用户想要注销,我们需要确保执行facebook注销功能 像这样的 logout.php if ($_SESSI

在该网站上,将有两种登录方式-facebook登录或网站标准登录

确定用户是否使用facebook或网站登录的正确方法是什么

我正在考虑在
users
表中添加一个名为
login\u type
的字段

值将为“facebook”或“标准”

如果用户通过facebook登录,则在会话中存储
login\u type
的值,例如
$\u会话['login\u type']=“facebook”

然而,若用户想要注销,我们需要确保执行facebook注销功能

像这样的

logout.php

if ($_SESSION['login_type'] == "facebook") { 
  $facebook->getLogoutUrl()
  //execute the url to CURL?
  header("LOCATION: index.php");
} 
  • 在用户表中添加Facebook用户id字段(例如fb_id)
  • 当用户通过Facebook登录时,您会执行与“正常”登录时完全相同的操作,但您不会检查用户名/密码,而是检查Facebook id/有效访问令牌
  • 在此之后,您可以通过用户的会话对其进行身份验证。你不必再关心Facebook登录
  • 注销时,杀死自己的会话等,然后你可以重定向到Facebook注销URL,Facebook将在那里杀死他们的会话内容。你不能真的卷曲它,因为你不会得到facebook.com的cookies这样做也会让用户在Facebook上注销,这可能会让他非常恼火
  • 注意:要澄清4:如果你的应用程序在Facebook之外运行,那么当用户注销你的应用程序/网站时,你必须将其注销Facebook。见I.6。在