• <kbd id="qyk40"></kbd>
  • <strike id="qyk40"></strike><samp id="qyk40"><pre id="qyk40"></pre></samp>

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

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

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

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

      標(biāo)簽單條顯示模板 不知道干嘛的 跳過吧。。標(biāo)簽?zāi)0鍢?biāo)記說明 繼續(xù)跳過。

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

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

      類名UcService,我們?cè)陬惱飳?shí)現(xiàn)對(duì)UCenter的操作。要操作UCenter的API ,首先我們要導(dǎo)入相應(yīng)的文件,相信大家已經(jīng)想到了,第一個(gè)是UCenter的配置文件:config_ucenter.php,第二個(gè)是我的程序和 UCenter通信的 client.php 文件 。導(dǎo)入這兩個(gè)文件,我們?cè)趇ndex.php入口文件增加一個(gè)常量,來定義我們的物理跟目錄。

    //項(xiàng)目物理跟路徑

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

    然后我們?cè)赨cService.class.php里定義一個(gè)構(gòu)造函數(shù),來導(dǎo)入我們的這兩個(gè)文件,

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

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

    //用戶注冊(cè) 這個(gè)方法是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 '包含不允許注冊(cè)的詞語(yǔ)';
    } elseif($uid == -3) {
    return '用戶名已經(jīng)存在';
    } elseif($uid == -4) {
    return 'Email 格式有誤';
    } elseif($uid == -5) {
    return 'Email 不允許注冊(cè)';
    } elseif($uid == -6) {
    return '該Email 已經(jīng)被注冊(cè)';
    } else {
    return '未定義';
    }
    } else {
    return intval($uid);
    }
    }

      這個(gè)函數(shù)是UCenter的注冊(cè)驗(yàn)證,只要我們?cè)诔绦蛑袑?shí)例這個(gè)類,使用這個(gè)函數(shù)就能進(jìn)行和UCenter的通信驗(yàn)證注冊(cè)。

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

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

      然后我們?cè)谛陆ㄒ粋€(gè)函數(shù),用來處理teach方法函數(shù)提交的數(shù)據(jù),并加入到數(shù)據(jù)庫(kù)!這里是主要的嘍哦!

    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']);

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

    }
    }

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

      'APP_AUTOLOAD_PATH' => '@.Service',

      這句話的意思是告訴ThinkPHP,我們程序執(zhí)行的時(shí)候自動(dòng)導(dǎo)入Action下面的Service目錄里的文件,如果不導(dǎo)入的話,在我們r(jià)egDo里是會(huì)報(bào)錯(cuò)的哦 !會(huì)提示找不到UcService 類,下面我們來測(cè)試下是不是可以注冊(cè)成功呢?

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

     

    穩(wěn)定

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

    貼心

    項(xiàng)目群及時(shí)溝通

    專業(yè)

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

    快速

    MVP模式小步快跑

    承諾

    我們選擇聲譽(yù)

    堅(jiān)持

    10年專注高端品質(zhì)開發(fā)
    • 返回頂部
    日韩人妻无码精品久久免费一 | 亚洲精品在线播放| 国产午夜亚洲精品午夜鲁丝片| 日韩专区在线观看| 国产精品免费综合一区视频| 国产毛片片精品天天看视频| 精品一区二区三区在线观看视频| 日本精品不卡视频| 热久久这里是精品6免费观看| 丁香六月婷婷精品免费观看| 日韩精品一卡2卡3卡4卡新区乱码| 国产精品李雅在线观看| 国产精品亚洲av色欲三区| 狠狠色香婷婷久久亚洲精品| 久久久久无码精品国产不卡| 久久人人爽天天玩人人妻精品| 精品一卡2卡三卡4卡免费视频| 国产999精品2卡3卡4卡| 视频一区精品自拍| 国产亚洲美女精品久久久2020| 中文字幕精品在线观看| 久久久久无码精品| 精品一区二区三区色花堂| 国产精品毛片无码| 国产成人精品日本亚洲专区 | 亚洲2022国产成人精品无码区 | 久久精品国产亚洲AV电影| 午夜精品久久久久久久| 久久久91精品国产一区二区| 久久丝袜精品综合网站| 久久精品国产亚洲AV麻豆~| 亚洲AV无码成人精品区天堂| 囯产精品一品二区三区| 久久久久人妻精品一区蜜桃| 久久久久亚洲精品无码蜜桃| 久久久久亚洲精品无码蜜桃| 91自产拍在线观看精品| 亚洲国产日产无码精品| 999在线视频精品免费播放观看| 香蕉久久夜色精品国产2020 | 中文乱码精品一区二区三区|