php - Codeigniter view file displayed before facebook login -


i have integrated facebook connect in codeigniter application, have come across weird glitch.

the process in login controller follows:

  1. check if user has facebook session
  2. if user logged facebook , has given permission, should redirected profile page on application
  3. if no session, or if user logged facebook no permissions given, login form(view file) should displayed no redirect

the problem facing is, if user has facebook logged in , given permissions , if accesses login page, login form displayed briefly, , after second or two, redirected profile page. why login form displayed? after code $this->load->view('login_form'); executes @ last line of controller after checking above.

so right now, occurs login_form view file displayed first, , checks facebook session , after redirects.

added controller code:

$this->load->library('facebook'); $user = $this->facebook->getuser(); if($user) { try{ $fb_data = $this->facebook->api('/me'); } catch(facebookapiexception $e) { error_log('from login: ' . $e); $user = null; } } if($user) { //below line checks if facebook email in database if($this->ion_auth->email_check($fb_data['email']) { redirect('my_profile'); } } //user not logged in display login page $this->load->view('login_form'); 

and on login form, using facebook javascript connect button. pressing button opens facebook oauth dialog page, , after executing, original login page refreshed javascript.

$this->load->library('facebook'); $user = $this->facebook->getuser(); if($user) { try{ $fb_data = $this->facebook->api('/me'); } catch(facebookapiexception $e) { error_log('from login: ' . $e); $user = null; } } if($user) { //below line checks if facebook email in database if($this->ion_auth->email_check($fb_data['email']) { redirect('my_profile'); } }else{ //user not logged in display login page $this->load->view('login_form'); } 

the code still being executed because has not been told otherwise, try , see.


Comments

Popular posts from this blog

javascript - backbone.js Collection.add() doesn't `construct` (`initialize`) an object -

php - Get uncommon values from two or more arrays -

Adding duplicate array rows in Php -