我在我的网站中实现登录。我想在stackoverflow.But中实现登录,只有一个gmail选项。 1)用户必须选择登录类型作为gmail 2)他必须输入他的gmail用户名和密码 3)他必须被重定向回现场
我是非常新的..任何帮助PLZ
答案 0 :(得分:5)
使用LightOpenID很容易实现。考虑到该用例,他们可以an example。
<?php
# Logging in with Google accounts requires setting special identity, so this example shows how to do it.
require 'openid.php';
try {
$openid = new LightOpenID;
if(!$openid->mode) {
if(isset($_GET['login'])) {
$openid->identity = 'https://www.google.com/accounts/o8/id';
header('Location: ' . $openid->authUrl());
}
?>
<form action="?login" method="post">
<button>Login with Google</button>
</form>
<?php
} elseif($openid->mode == 'cancel') {
echo 'User has canceled authentication!';
} else {
echo 'User ' . ($openid->validate() ? $openid->identity . ' has ' : 'has not ') . 'logged in.';
}
} catch(ErrorException $e) {
echo $e->getMessage();
}
让你启动并运行非常简单(我假设* nix喜欢系统):
www
文件夹映射到我的服务器。alfred@alfred-laptop:~/www$ wget http://gitorious.org/lightopenid/lightopenid/archive-tarball/master
--2011-02-02 13:21:30-- http://gitorious.org/lightopenid/lightopenid/archive-tarball/master
Resolving gitorious.org... 87.238.52.168
Connecting to gitorious.org|87.238.52.168|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 17104 (17K) [application/x-gzip]
Saving to: `master'
100%[======================================>] 17,104 --.-K/s in 0.04s
2011-02-02 13:21:30 (386 KB/s) - `master' saved [17104/17104]
alfred@alfred-laptop:~/www$ tar xfz master
alfred@alfred-laptop:~/www$ google-chrome http://localhost/lightopenid-lightopenid/example-google.php
Created new window in existing browser session.
答案 1 :(得分:0)
通过OpenID进行身份验证。阅读此http://code.google.com/apis/accounts/docs/OpenID.html
答案 2 :(得分:0)
答案 3 :(得分:0)