Showing posts with label OpenID. Show all posts
Showing posts with label OpenID. Show all posts

Tuesday, September 25, 2012

Login with Yahoo Account


Website login with Yahoo account been posted at :
Website Login with Yahoo Account in my previous post, yahoo openid identify url been changed.

please use the following new OpenID URL for yahoo in order to work.


NEW Yahoo OpenID URL:

http://open.login.yahooapis.com/openid20/www.yahoo.com/xrds
<?php session_start();
# Logging in with Google accounts requires setting special identity, so this example shows how to do it.
require 'require/openid.php';

try {
    # Change 'localhost' to your domain name.
    $openid = new LightOpenID('demos.w3lessons.com');
 
  $openid->required = array(
  'namePerson',
  'namePerson/first',
  'namePerson/last',
  'contact/email',
  );

    if(!$openid->mode) {
  
 if(@$_GET['auth']=="google")
    {
  $_SESSION['auth']="Google";
        $openid->identity = 'https://www.google.com/accounts/o8/id';
        header('Location: ' . $openid->authUrl());
 }elseif(@$_GET['auth']=="yahoo")
 {
  $_SESSION['auth']="Yahoo";
$openid->identity ='http://open.login.yahooapis.com/openid20/www.yahoo.com/xrds';
  header("Location:".$openid->authUrl());
 }

    } elseif($openid->mode == 'cancel') {
        echo 'User has canceled authentication!';
    } else {
   $external_login=$openid->getAttributes();
   $_SESSION['name']=$external_login['namePerson/first']." ".$external_login['namePerson/last'];
   $_SESSION['email']=$external_login['contact/email'];
   header("Location:account-home.php");
   exit();
   
    }
} catch(ErrorException $e) {
    echo $e->getMessage();
}
?>



View the Updated New Demo & Download

Download This Script     Live Demo     Download Script