Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过Facebook登录CakePHP登录后无重定向_Facebook_Cakephp - Fatal编程技术网

通过Facebook登录CakePHP登录后无重定向

通过Facebook登录CakePHP登录后无重定向,facebook,cakephp,Facebook,Cakephp,我将按照以下步骤在我的应用程序中应用FB登录。我已经一步一步地完成了整个教程。登录页面上还有一个按钮,可以通过Facebook登录。但当我点击该按钮并获得FB授权时,或者我已经登录FB,但我的页面并没有重定向到登录区域。即使在通过FB登录后,我仍然停留在登录页面。但是CakePHP登录正常 UsersController.php登录操作的一些代码片段 public function login() { if ($this->request->is('post')) {

我将按照以下步骤在我的应用程序中应用FB登录。我已经一步一步地完成了整个教程。登录页面上还有一个按钮,可以通过Facebook登录。但当我点击该按钮并获得FB授权时,或者我已经登录FB,但我的页面并没有重定向到登录区域。即使在通过FB登录后,我仍然停留在登录页面。但是CakePHP登录正常

UsersController.php登录操作的一些代码片段

    public function login() {
    if ($this->request->is('post')) {
        if ($this->Auth->login()) {
            if($this->Auth->user('id')==1){
                if($this->Auth->user('type')==1){
                    if($this->Auth->user('verified')==0){
                        $this->Auth->logout();
                    }
                }
                return $this->redirect($this->Auth->redirectUrl());
                $this->Session->setFlash(__('Logged In Successfully'), 'default', array('class' => 'alert alert-success'));
            }               
            else{
                $this->redirect(array('controller'=>'users','action'=>'index'));
            }              
        }
        $this->Session->setFlash(__('Invalid username or password, try again'), 'default', array('class' => 'alert alert-danger'));
    }
}
在AppController.php中,我包含了以下代码:

public $components = array(
    'Paginator',
    'Session',
    'Auth' => array(
        'loginRedirect' => array(
            'controller' => 'users',
            'action' => 'index'
        ),
        'logoutRedirect' => array(
            'controller' => 'users',
            'action' => 'home',                
        ),
        'authenticate' => array(
            'Form' => array(
                'passwordHasher' => 'Blowfish',
                'fields'=>array('username'=>'email') 
            )
        )
    ),
    'Email',
    'Facebook.Connect'
);
var $helpers    = array('Facebook.Facebook');
在UsersContoller.php pr$\会话中,当我已经在CakePHP登录页面上登录FB时,输出以下代码:

    Array
(
    [Config] => Array
        (
            [userAgent] => f04e6*****************c00392
            [time] => 1425647071
            [countdown] => 10
        )

    [fb_989554394440625_user_id] => 8459*********71
)

我在网上搜索过这个问题,但无法解决

缺少一些重要的代码部分,这些代码需要给出一个合格的、经过验证的答案

您在哪里调用登录函数?确保仅在用户未登录时调用此函数,否则将呈现您的内容

if(!$this->Auth->user()) {
   $this->login();           // request login
} else {
   $this->render('profile'); //render your view
}
如果用户正确登录,则应呈现纵断面图。如果您似乎已登录,但仍然会调用login Fn,那么如果您这样做,则可能会在重写Auth方法时出错


如果您仍然无法解决此问题,请在此处添加更多代码。

代码中缺少一些重要的部分,无法给出经过验证的合格答案

您在哪里调用登录函数?确保仅在用户未登录时调用此函数,否则将呈现您的内容

if(!$this->Auth->user()) {
   $this->login();           // request login
} else {
   $this->render('profile'); //render your view
}
如果用户正确登录,则应呈现纵断面图。如果您似乎已登录,但仍然会调用login Fn,那么如果您这样做,则可能会在重写Auth方法时出错


如果您仍然无法解决此问题,请在此处添加更多代码。

提示:1避免在返回后使用代码。这不会被执行。loginFn 2您在loginFn中的第一次注销将执行会话清除,这可能会导致意外行为我已从登录功能中删除注销,但它不起作用。这里有人知道问题是什么吗?您可以使用X-Debug或常规调试输出来确定,如果它要跳出呢?无法使用调试进行调试。提示:1避免返回后的代码。这不会被执行。loginFn 2您在loginFn中的第一次注销将执行会话清除,这可能会导致意外行为我已从登录功能中删除注销,但它不起作用。这里有人知道问题是什么吗?您可以使用X-Debug或常规调试输出来确定,如果它要跳出呢?无法使用调试。我已经用我在问题评论中提到的问题解决了我的问题。关于我问题的代码,我已经提供了用于登录的每一行代码。我已经用我在问题评论中提到的问题解决了我的问题。关于我问题的代码,我已经提供了用于登录的每一行代码。