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

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

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

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

      現在開始進行我們的api目錄里面的uc.php 配置了,首先我們用編輯器打開這個文件,找到36行的位置,發現這里導入了一個配置文件 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字節之內哦。應用的主url ,我們這次講解的是Thinkphp整合Ucenter 那么我們的Thinkphp是在跟目錄的,這里我填入 http://www.ttedu.com.cn 童鞋們如果是本地就填寫 http://localhost 不用加 "/" 哦,下面是應用IP,后面說明說不用填寫,那么我們就留空吧,以為我比較懶 呵呵!應用密鑰?這里怎么填呢。其實這里隨便寫入些字符串就可以 ,這個密鑰是兩個程序之間互通的嚴重,相當于你去別人家拿東西,別人最起碼要認識你一樣,如果別人都不認識你,怎么會把東西給你呢?更何況是網站核心的會 員信息啊。呵呵!我們測試用 ,隨便填上點吧 “123456” 呵呵 ,我比較懶吧!應用的物理路徑?也提示說可以不用填寫,那么留空吧!個人資料頁面?這個有點犯難了,UCenter怎么會這么智能呢?留空吧。。應用程序 名稱,他已經幫我填好了,咱們跳過!呵呵

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

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

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

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

    //項目物理跟路徑

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

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

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

      OK!相信童鞋們都已經完成了上述的步驟,下面我們來編寫相應的代碼,來實現和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 '用戶名已經存在';
    } elseif($uid == -4) {
    return 'Email 格式有誤';
    } elseif($uid == -5) {
    return 'Email 不允許注冊';
    } elseif($uid == -6) {
    return '該Email 已經被注冊';
    } else {
    return '未定義';
    }
    } else {
    return intval($uid);
    }
    }

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

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

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

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

    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);
    }

    }
    }

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

      'APP_AUTOLOAD_PATH' => '@.Service',

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

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

     

    穩定

    產品高可用性高并發

    貼心

    項目群及時溝通

    專業

    產品經理1v1支持

    快速

    MVP模式小步快跑

    承諾

    我們選擇聲譽

    堅持

    10年專注高端品質開發
    • 返回頂部
    日韩爽爽视频爽爽| 精品国产一区二区三区无码 | 久久99精品久久久久久秒播| 中文字幕无码日韩专区免费| 在线精品一区二区三区电影| 国产成人精品久久一区二区三区| 性色精品视频网站在线观看| 精品久久一区二区三区| 99re6在线视频精品免费| 精品国产呦系列在线观看免费| 亚洲AV成人精品日韩一区18p| 欧美日韩久久久精品A片| 国产日韩AV免费无码一区二区| 日韩精品免费一线在线观看| 国产精品无码翘臀在线观看| 国内精品一区二区三区在线观看| 亚洲精品无码久久| 99re最新这里只有精品| 2020国产精品自拍| 精品免费人成视频app| 亚洲精品中文字幕乱码| 69国产成人综合久久精品91| 亚洲视频精品在线| 日韩欧精品无码视频无删节| 无码国内精品久久人妻| 国产在线精品一区二区不卡| 亚洲日韩精品一区二区三区| 中文字幕精品无码一区二区| 亚洲日韩精品无码专区网站| HEYZO无码综合国产精品| 国产999精品久久久久久| 国产高清在线精品一本大道国产 | 日产精品卡一卡二卡三的概述| 国产精品揄拍一区二区久久| 国产精品龙口护士门在线观看 | 久久精品国产亚洲av日韩| 亚洲动漫精品无码av天堂| 亚洲国产精品无码AAA片| 久久无码专区国产精品s| 亚洲日韩精品一区二区三区无码| 2020国产成人久久精品|