登入Facebook和Twitter

cenfeng發表於2019-06-25

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>

如有任何疑問請在此處評論。

謝謝,

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69933200/viewspace-2648663/,如需轉載,請註明出處,否則將追究法律責任。

相關文章