登錄Facebook和Twitter
F
acebook和Twitter在社交網絡世界中變得越來越大,兩個網絡都提供oAuth支持。
我們開發了一個用Twitter和Facebook登錄的系統。
如今網頁用戶對填寫大型注冊表不感興趣。
此腳本可幫助您避免注冊表單,它非常有用且易于集成。
數據庫
示例數據庫
用戶
表列id,email,oauth_uid,oauth_provider和
username.
CREATE TABLE
users
(
id
INT
PRIMARY KEY
AUTO_INCREMENT
,
email
VARCHAR(70),
oauth_uid
VARCHAR(200),
oauth_provider
VARCHAR(200),
username
VARCHAR(100),
twitter_oauth_token
VARCHAR(200),
twitter_oauth_token_secret
VARCHAR(200)
);
該教程包含三個名為
facebook
,
twitter
和
config的
文件夾
,
其中包含
PHP文件。
facebook
//Facebook OAUTH library
twitter
//Twitter OAUTH library
config
--
functions.php
--
dbconfig.php
//Database connection
--
fbconfig.php
//Facebook API connection
--
twconfig.php
//Twitter API connection
index.php
home.php
login-twitter.php
login-facebook.php
getTwitterData.php
Facebook
設置
您必須
創建一個應用程序
。
Facebook將為您提供
app id
和
app secret id
,只需修改以下代碼
fgconfig.php
<?php
define('APP_ID', 'Facebook APP ID');
define('APP_SECRET', 'Facebook Secret ID');
?>
Twitter
設置
創建一個Twitter應用程序
點擊這里
。
有些像Facebook Twitter使用這些修改以下代碼為您提供消費者密鑰amd消費者密鑰。
twconfig.php
<?php
define('YOUR_CONSUMER_KEY', 'Twitter Key');
define('YOUR_CONSUMER_SECRET', 'Twitter Secret Key');
?>
dbconfig.php
數據庫配置文件。
<?php
define
('
DB_SERVER
', 'localhost');
define
('
DB_USERNAME
', 'username');
define
('
DB_PASSWORD
', 'password');
define
('
DB_DATABASE
', 'database');
$db =
mysqli_connect
(
DB_SERVER
,
DB_USERNAME
,
DB_PASSWORD
,
DB_DATABASE
);
?>
login-twitter.php
在根目錄中,在
login-twitter.php
代碼中
找到以下行
并替換您的
網站
。
$request_token = $twitteroauth
->
getRequestToken('http://
yourwebsite.com
/getTwitterData.php');
index.php
如果要修改Web項目現有的登錄頁面或索引頁面,只需使用以下代碼即可。
<?php
session_start();
if (isset($_SESSION['id'])) {
// Redirection to login page twitter or facebook
header("location: home.php");
}
if (array_key_exists("login", $_GET))
{
$oauth_provider = $_GET['oauth_provider'];
if ($oauth_provider == 'twitter')
{
header("Location: login-twitter.php");
}
else if ($oauth_provider == 'facebook')
{
header("Location: login-facebook.php");
}
}
?>
//HTML Code
<a href="?login&oauth_provider=twitter">
Twitter_Login
</a>
<a href="?login&oauth_provider=facebook">
Facebook_Login
</a>
如有任何疑問請在此處評論。
謝謝,