91亚洲精华国内精华精华液_国产高清在线精品一区不卡_精品特级一级毛片免费观看_欧美日韩中文制服有码_亚洲精品无码你懂的网站369

首先我們先安裝Thinkphp,我們這次教程使用的是Thinkphp3.0穩(wěn)定版,首先我們下載Thinkphp3.0,解壓并放在自己的 www目錄,在根目錄新建 index.php 文件 并寫入: require_once './ThinkPHP/ThinkPHP.php'; 通過本機游覽index.php 、 thinkphp會生成相應目錄。 (*^__^*) 嘻嘻…… 很智能的哦。然后配置config.php 寫入你的數(shù)據(jù)庫連接配置,這個曉漁就不寫了,請不會的童鞋查下手冊吧!

  然后下載目前最新版本的UCenter 1.6 版本,在網(wǎng)站根目錄新建 ucenter 目錄,解壓UCenter,把upload目錄里的所有文件上傳到你剛才新建的ucenter目錄里,在游覽器輸入 http://localhost/uceter/install/ 如果不是這個訪問地址請換成相應的訪問地址哦 ! 安裝ucenter。

  然后找到下載的UCenter,把 advanced 目錄里面的 uc_client 和 examples下面的api 文件夾復制到你的網(wǎng)站根目錄,是好ThinkPHP同級目錄哦。

  現(xiàn)在開始進行我們的api目錄里面的uc.php 配置了,首先我們用編輯器打開這個文件,找到36行的位置,發(fā)現(xiàn)這里導入了一個配置文件 require_once DISCUZ_ROOT.'./config.inc.php'; 基于ThinkPHP的目錄結構,所有的配置文件都放在Config目錄里,那么我們在 Config目錄里新建 config_ucenter.php 文件,并把uc.php文件所有包含的 require_once DISCUZ_ROOT.'./config.inc.php'; 修改為 require_once DISCUZ_ROOT.'./Conf/config_ucenter.php'; 有的童鞋可能會問了 config_ucenter.php怎么配置呢?其實這個是非常簡單的,甚至不用我們來寫代碼,直接復制粘貼就OK了 ,我們先登錄到 ucenter 應用管理,添加一個應用吧!點擊左側菜單欄 應用管理 ,然后我們看到還沒有應用,那么我們點擊添加應用,哇,讓我們填寫的還挺多啊。那么我們首先看選擇應用,因為我們是自己的程序,選擇其他吧,應用名稱,這 個隨便起個名字就可以 20字節(jié)之內(nèi)哦。應用的主url ,我們這次講解的是Thinkphp整合Ucenter 那么我們的Thinkphp是在跟目錄的,這里我填入 http://www.ttedu.com.cn 童鞋們?nèi)绻潜镜鼐吞顚?http://localhost 不用加 "/" 哦,下面是應用IP,后面說明說不用填寫,那么我們就留空吧,以為我比較懶 呵呵!應用密鑰?這里怎么填呢。其實這里隨便寫入些字符串就可以 ,這個密鑰是兩個程序之間互通的嚴重,相當于你去別人家拿東西,別人最起碼要認識你一樣,如果別人都不認識你,怎么會把東西給你呢?更何況是網(wǎng)站核心的會 員信息啊。呵呵!我們測試用 ,隨便填上點吧 “123456” 呵呵 ,我比較懶吧!應用的物理路徑?也提示說可以不用填寫,那么留空吧!個人資料頁面?這個有點犯難了,UCenter怎么會這么智能呢?留空吧。。應用程序 名稱,他已經(jīng)幫我填好了,咱們跳過!呵呵

  標簽單條顯示模板 不知道干嘛的 跳過吧。。標簽模板標記說明 繼續(xù)跳過。

  是否開啟同步登錄 這個不用說了 選中。 是否接受通知 繼續(xù)選中。OK了 基本信息填完了,提交下 。通信失敗?這是為什么呢?頭疼啊。。我們看下面多了個 “應用的 UCenter 配置信息” 右側還有詳細說明:當應用的 UCenter 配置信息丟失時可復制左側的代碼到應用的配置文件中 。一切變的明了了。復制文本框內(nèi)的配置信息,我記得我們之前新建一個 config_ucenter.php 的文件還是空的,難道放這里的嗎?那么試一下吧!把這些信息粘貼到里面,保存。 在看ucenter 刷新下! OK 通信成功!不錯,基本通信我們就完成了!

現(xiàn)在開始程序正式的整合!將ucenter 提供的api方法封裝下,讓我們的程序看起來更加干凈整潔!首先,我們先在lib目錄下新建一個文件夾,并命名為:Service。這個文件夾的功能一會 在和大家講解。然后再Service 里面建立我們自己的類,以方便和UC的通信,新建php文件,文件名為:UcService.class.php,

  類名UcService,我們在類里實現(xiàn)對UCenter的操作。要操作UCenter的API ,首先我們要導入相應的文件,相信大家已經(jīng)想到了,第一個是UCenter的配置文件:config_ucenter.php,第二個是我的程序和 UCenter通信的 client.php 文件 。導入這兩個文件,我們在index.php入口文件增加一個常量,來定義我們的物理跟目錄。

//項目物理跟路徑

define('DOC_ROOT_PATH', rtrim(dirname(__FILE__), '/\\') . DIRECTORY_SEPARATOR);

然后我們在UcService.class.php里定義一個構造函數(shù),來導入我們的這兩個文件,

public function __construct()
{
include_once(DOC_ROOT_PATH . 'Conf/config_ucenter.php');
include_once(DOC_ROOT_PATH . 'uc_client/client.php');
}

  OK!相信童鞋們都已經(jīng)完成了上述的步驟,下面我們來編寫相應的代碼,來實現(xiàn)和UCenter的同步,首先我們先來完成注冊的代碼。

//用戶注冊 這個方法是UcService.class.php的

public function register($username, $password, $email)
{
$uid = uc_user_register($username, $password, $email);
if($uid <= 0) {
if($uid == -1) {
return '用戶名不合法';
} elseif($uid == -2) {
return '包含不允許注冊的詞語';
} elseif($uid == -3) {
return '用戶名已經(jīng)存在';
} elseif($uid == -4) {
return 'Email 格式有誤';
} elseif($uid == -5) {
return 'Email 不允許注冊';
} elseif($uid == -6) {
return '該Email 已經(jīng)被注冊';
} else {
return '未定義';
}
} else {
return intval($uid);
}
}

  這個函數(shù)是UCenter的注冊驗證,只要我們在程序中實例這個類,使用這個函數(shù)就能進行和UCenter的通信驗證注冊。

  那么我們是怎么使用它的呢?

  首先我的注冊文件是 http://www.ezcx.net/Register/teach,也就是說在你的程序目錄里,Lib/Action/Home/下面有一 個Register.class.php 文件,我們打開這個文件,如果沒有請創(chuàng)建這個文件,我的目錄下面是有分組的Home是分組的名稱目錄,如果沒有配置的童鞋請直接在Action目錄創(chuàng)建, 這個類要繼承Action哦!然后我們在在類里面創(chuàng)建一個teach的方法函數(shù),用來顯示一個注冊的頁面。

  然后我們在新建一個函數(shù),用來處理teach方法函數(shù)提交的數(shù)據(jù),并加入到數(shù)據(jù)庫!這里是主要的嘍哦!

public teach(){

$this->display();

}

public function regDo(){

if($this->isPost()){
if(!$_REQUEST['username'] || !$_REQUEST['email'] || !$_REQUEST['password']){
exit('data invalid.');
}
$nick = $_REQUEST['username'];
$email = $_REQUEST['email'];
$pw = trim($_REQUEST['password']);

//這個類需要在Conf/config.php里配置下的哦,一會下面會講到!
$ucService = new UcService;
$uid = $ucService->register($nick, $pw, $email);
//成功注冊到UC
if(!is_string($uid)){
$send_email = false;
$is_verifyed = 1;
//本地注冊
$uModel = D('auser');
$data['user_id'] = $uid;
$data['nick'] = $nick;
$data['email'] = $email;
$data['password'] = md5($pw);
if($uModel->add($data)){
$this->success("注冊成功!","__APP__/");
}else{
$this->error("注冊失敗!");
}
}else{
exit($uid);
}

}
}

  本地注冊后面,童鞋們可以直接寫你們的程序邏輯代碼,執(zhí)行這一步之前,我們要在Conf/config.php里加上一句,

  'APP_AUTOLOAD_PATH' => '@.Service',

  這句話的意思是告訴ThinkPHP,我們程序執(zhí)行的時候自動導入Action下面的Service目錄里的文件,如果不導入的話,在我們regDo里是會報錯的哦 !會提示找不到UcService 類,下面我們來測試下是不是可以注冊成功呢?

  我們打開http://www.ezcx.net/Register/teach 填寫用戶名,密碼,郵箱,提交!OK!程序提示我們注冊成功了!那么我們進入UCenter看看是否有用戶注冊成功了呢?我剛才填寫的是 用戶名:test 密碼:123456 郵箱:ezcx@ezcx.net,在ucenter的用戶管理我們看到已經(jīng)有了 出現(xiàn)了我們剛才注冊的用戶,說明我們注冊的已經(jīng)成功了!

 

穩(wěn)定

產(chǎn)品高可用性高并發(fā)

貼心

項目群及時溝通

專業(yè)

產(chǎn)品經(jīng)理1v1支持

快速

MVP模式小步快跑

承諾

我們選擇聲譽

堅持

10年專注高端品質(zhì)開發(fā)
  • 返回頂部