php_lover Posted November 16, 2013 Share Posted November 16, 2013 Ok , so I am developing a web application that's going to let people connect through Facebook , Twitter or Google plus ... Now , the api code is located in three respective different folders , facebook folder for the facebook api , twitter folder for twitter and google_plus.. The thing is , I'm trying to make people be able to log through Twitter and access the application .. and give them the option to also logon through Facebook after logging through Twitter and keep the twitter-based data after they logged through Facebook , I would basically like them to be able to view both their twitter and facebook feeds mixed together at the same time ... I tried to implement sessions , but it looks like if they log through Facebook after logging through twitter first , the Twitter session variable content become NULL and only facebook session data is displayed .. How can I manipulate the sessions so that twitter data can be kept when a user log through facebook as well ? Below is what I did to test the data .. <?php session_set_cookie_params('3600'); session_start(); require('../database/connection.php'); require_once('../twitter/twitteroauth/twitteroauth.php'); require_once('../twitter/config.php'); include_once '../facebook/fbmain.php'; // Here I'll test the $_SESSION variable to see if twitter data is kept after a user logs through facebook as well .. but twitter data become NULL instead and the $_SESSION array only show facebook data .. How can I make twitter session data STAY after someone logs through facebook as well ? var_dump($_SESSION); var_dump(session_id()); /* If access tokens are not available redirect to connect page. */ if (empty($_SESSION['facebook_id']) && (empty($_SESSION['access_token']['oauth_token']) || empty($_SESSION['access_token']['oauth_token_secret']))) { header('Location: ./clearsessions.php'); } else { /* Get user access tokens out of the session. */ $access_token = $_SESSION['access_token']; /* Create a TwitterOauth object with consumer/user tokens. */ $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $access_token['oauth_token'], $access_token['oauth_token_secret']); /* If method is set change API call made. Test is called by default. */ $content = $connection->get('account/verify_credentials'); $json = json_encode($content); $data = json_decode($json,true); $screen_name = $data["screen_name"]; $name = $data["name"]; $image_url = $data['profile_image_url']; $_SESSION['screen_name'] = $screen_name; $_SESSION['image_url'] = $image_url; $query = "SELECT * FROM Users WHERE username ='$screen_name'"; $result = mysql_query($query); $result_count = mysql_num_rows($result); if($result_count == 0) { $insert = "INSERT INTO Users(username) VALUES('$screen_name')"; $result_insert = mysql_query($insert); } } if(isset($_SESSION['oauth_token']) && isset($_SESSION['oauth_token_secret']) && isset($_SESSION['facebook_id'])){ $user = $_SESSION['facebook_id']; } ?> Quote Link to comment https://forums.phpfreaks.com/topic/283960-how-to-keep-two-different-sessions-from-two-different-folders-alive-on-the-same-domain/ Share on other sites More sharing options...
oaass Posted November 16, 2013 Share Posted November 16, 2013 There's no need to use multiple log-ins. You should instead just let the user connect his/her account with the different sites, and then when the user signs in (s)he will see the merged feed from the linked accounts. Quote Link to comment https://forums.phpfreaks.com/topic/283960-how-to-keep-two-different-sessions-from-two-different-folders-alive-on-the-same-domain/#findComment-1458523 Share on other sites More sharing options...
php_lover Posted November 16, 2013 Author Share Posted November 16, 2013 There's no need to use multiple log-ins. You should instead just let the user connect his/her account with the different sites, and then when the user signs in (s)he will see the merged feed from the linked accounts. Hello Oaass, I am not quite sure I understand what you mean ... How can users view feeds from Twitter , Facebook and Google+ networks , if I don't let them connect through Facebook , Twitter and Google+ via their APIs to pull data .. Could you tell me explain a little bit more what you meant , I'd totally apppreciate it .. Quote Link to comment https://forums.phpfreaks.com/topic/283960-how-to-keep-two-different-sessions-from-two-different-folders-alive-on-the-same-domain/#findComment-1458526 Share on other sites More sharing options...
oaass Posted November 16, 2013 Share Posted November 16, 2013 Your user creates an account on your site, and from there the user can connect to his/her's Facebook, Google+, Twitter, etc, account. When the user logs on to your site the connected apps will then pull the feeds from these services. Quote Link to comment https://forums.phpfreaks.com/topic/283960-how-to-keep-two-different-sessions-from-two-different-folders-alive-on-the-same-domain/#findComment-1458529 Share on other sites More sharing options...
php_lover Posted November 16, 2013 Author Share Posted November 16, 2013 Your user creates an account on your site, and from there the user can connect to his/her's Facebook, Google+, Twitter, etc, account. When the user logs on to your site the connected apps will then pull the feeds from these services. How though ? Isn't the user supposed to connect to facebook , google , twitter via their APIs ... It's too brief , maybe if you elaborate on the process , that'd be great ... because to connect to facebook , google , twitter to pull the feeds, statuses , images , etc ... you need the APIs , and that's what I'm implementing .. I'm having trouble if the facebook api session overwritting the twitter session .. Quote Link to comment https://forums.phpfreaks.com/topic/283960-how-to-keep-two-different-sessions-from-two-different-folders-alive-on-the-same-domain/#findComment-1458530 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.