Как перенаправить на другую страницу после входа в Facebook в codeigniter? - PullRequest
0 голосов
/ 13 ноября 2018

контроллер: welcome.php

public function login()
{
    $userData = array();
    if($this->facebook->is_authenticated()){
        $fbUserProfile = $this->facebook->request('get', '/me?fields=id,first_name,last_name,email,picture');
        $userData['oauth_provider'] = 'facebook';
        $userData['oauth_uid'] = $fbUserProfile['id'];
        $userData['name'] = $fbUserProfile['first_name']." ".$fbUserProfile['last_name'];
        $userData['email'] = $fbUserProfile['email'];
        $userData['user_image'] = $fbUserProfile['picture']['data']['url'];
        $userID = $this->user->checkUser($userData);
        if(!empty($userID))
        {
            $data['userData'] = $userData;
            $this->session->set_userdata('userData',$userData);
        }
        else
        {
           $data['userData'] = array();
        }
        $data['logoutURL'] = $this->facebook->logout_url();
    }
    else
    {
        $data['authURL'] =  $this->facebook->login_url();
    }

    $this->load->view('login',$data);
}

login.php

<?php
    if(!empty($authURL)) 
    {
        echo '<a href="'.$authURL.'" class="facebook linked btn-block"><i class="fa fa-facebook"></i></a>';
    }
    else
    {
        echo '';
    }
?>

В этом коде я создал логин Facebook в CodeIgniter.Теперь, что происходит, когда я нажимаю на кнопку facebook, он перенаправляет меня на страницу входа в Facebook после заполнения имени пользователя и пароля, он перенаправляет меня на ту же страницу, т.е. login.Но я хочу перенаправить страницу my-profile.Итак, как я могу это сделать?Пожалуйста, помогите мне.

Спасибо

1 Ответ

0 голосов
/ 13 ноября 2018

Вы можете сделать что-то вроде этого,

$url = "www.domain.com/dashboard"; /// your url
$fb = new Facebook\Facebook([/* . . . */]);
$fbClient = $fb->FacebookRedirectLoginHelper($url); 

На вашей странице входа в систему,

echo '<a href="'.$fbClient->getLoginUrl().'" class="facebook linked btn-block"><i class="fa fa-facebook"></i></a>';

или еще

$fb = new Facebook\Facebook([/* . . . */]);

$helper = $fb->getRedirectLoginHelper();
$permissions = ['email', 'user_likes']; // optional
$loginUrl = $helper->getLoginUrl('http://{your-website}/login-callback.php', $permissions);

echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';

Дополнительные параметры здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...