with google php mysql login openid

php - with - ¿Cómo habilita a los clientes para iniciar sesión en su sitio usando su cuenta de Google?



google login jquery (7)

Acabo de ver http://uservoice.com/login . Utiliza cuentas de Google, MySpace , Yahoo, OpenID y todo para iniciar sesión en clientes en su sitio. ¿Puedo hacer eso?

Quiero decir, los clientes no necesitan registrarse en mi sitio. Pueden iniciar sesión con sus cuentas en los sitios anteriores.

Si tiene una solución, preferiría una basada en PHP y MySQL.




Zend_OpenId de Zend Framework

Zend_OpenId es un componente de Zend Framework que proporciona una API simple para construir sitios habilitados para OpenID y proveedores de identidades.



Usuarios de Uservoice RPX http://rpxnow.com . Puedes usarlo fácilmente con PHP, solo https y analizar el json o xml repsonse. Ni siquiera necesita cambiar su esquema de base de datos o almacenar algo localmente.


creo que es una buena solución para usted paso a paso

Descarga de 1 descarga

2-crea un archivo llamado login.php de esta manera (en el mismo directorio o cambia require_one al tuyo):

<?php require_once ''openid.php''; $myopenid = new LightOpenID("your-domain.com");//no problem even if u can write http://localhost if ($myopenid->mode) { if ($myopenid->mode == ''cancel'') { echo "User has canceled authentication !"; } elseif($myopenid->validate()) { $data = $myopenid->getAttributes(); $email = $data[''contact/email'']; $first = $data[''namePerson/first'']; echo "Identity : $openid->identity <br>"; echo "Email : $email <br>"; echo "First name : $first"; } else { echo "The user has not logged in"; } } else { echo "Go to index page to log in."; } ?>

3-next trata de crear un archivo llamado index.php:

<?php require_once ''openid.php''; $openid = new LightOpenID("your-domain.com");//no problem even if u can write http://localhost $openid->identity = ''https://www.google.com/accounts/o8/id''; $openid->required = array( ''namePerson/first'', ''namePerson/last'', ''contact/email'', ); $openid->returnUrl = ''your-domain.com/login.php'' ?> <a href="<?php echo $openid->authUrl() ?>">Login with Google</a>

casi me olvido de desconectarme y puedo matar la sesión;