freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

深入淺出php框架thinkphp實(shí)戰(zhàn)開發(fā)_thinkphp基礎(chǔ)項(xiàng)目實(shí)戰(zhàn)11-資料下載頁

2025-02-20 13:42本頁面
  

【正文】 該表 基本的只需要 3個(gè)字段( id 主鍵自增, username 用戶名, password 密碼 ) (若用戶有其他一些無需 RBAC驗(yàn)證的信息的字段,可自行增加) 創(chuàng)建表操作完成后,可以添加兩條用戶記錄,即建立兩個(gè)用戶( admin 和 user ) 2. thinkphp的 RBAC功能所用到的表結(jié)構(gòu),無需自己設(shè)計(jì),只需要找到 /ThinkPHP/lib/ORG/Util/ 文件中, 拷貝 4個(gè)相關(guān)創(chuàng)建表代碼即可 (注: think_access 表中,需要在最后添加一個(gè) int 類型的 pid字段 ) 14. ThinkPHP中的 RBAC 4 個(gè)表的含義及設(shè)計(jì)時(shí)的注意事項(xiàng)如下: 1 ) think_role: 用戶角色表 (也就是用戶組表) 一般需要填寫( 2個(gè)字段): name 字段: 組的名字( admin 或 user)管理員組或普通用戶組 status 字段: 狀態(tài)信息,一般設(shè)置為 1,表示開啟狀態(tài) 注: pid字段表示是否有父節(jié)點(diǎn) id (有父節(jié)點(diǎn) id,就可以讓某個(gè)組屬于另一個(gè)組 ) , 該表中該字段可不指明 (默認(rèn)為空即可 ) 這里我們可以先添加兩條記錄,即建立兩個(gè)角色(也就是兩個(gè)組 admin 和 user ) 2) think_role_user:用戶和組的對(duì)應(yīng)關(guān)系表 接著我們將之前添加的兩個(gè)用戶和兩個(gè)組進(jìn)行對(duì)應(yīng) insert into think_role_user (role_id, user_id) values(1,1),(2,2) 14. ThinkPHP中的 RBAC 4 個(gè)表的含義及設(shè)計(jì)時(shí)的注意事項(xiàng)如下: 3) think_node : 節(jié)點(diǎn)表 什么是節(jié)點(diǎn): 節(jié)點(diǎn) 就是 (1項(xiàng)目( APP_NAME)、 2模塊、 3方法,等級(jí)分別是 123)之間的 關(guān)系 一般比須讓用戶先能訪問項(xiàng)目,接著才能訪問項(xiàng)目下的模塊以及模塊下的方法 需要所有的節(jié)點(diǎn)都可控制,則需要將節(jié)點(diǎn)全部要添加到節(jié)點(diǎn)表 該表中一般需要填寫( 5個(gè)字段): id 字段: (可以讓其自增) name 字段: 組的名字( admin 或 user)管理員組或普通用戶組 status 字段: 狀態(tài)信息,一般設(shè)置為 1,表示開啟狀態(tài) pid 字段: 父節(jié)點(diǎn)的 id字段的數(shù)值 level 字段: 節(jié)點(diǎn)等級(jí),項(xiàng)目為 1,模塊為 2,方法為 3 14. ThinkPHP中的 RBAC 接著添加 所有想進(jìn)行權(quán)限控制的節(jié)點(diǎn)信息 的記錄: (可自行設(shè)計(jì),無須一定按以下規(guī)則) INSERT INTO think_node (id, name,title, status, remark, sort, pid, level) VALUES (1, 39。admin39。, NULL, 1, NULL, NULL, 0, 1), (2, 39。user39。, NULL, 1, NULL, NULL, 1, 2), (3, 39。index39。, NULL, 1, NULL, NULL, 1, 2), (4, 39。index39。, NULL, 1, NULL, NULL, 2, 3), (5, 39。del39。, NULL, 1, NULL, NULL, 2, 3), (6, 39。add39。, NULL, 1, NULL, NULL, 2, 3), (7, 39。update39。, NULL, 1, NULL, NULL, 2, 3), (8, 39。index39。, NULL, 1, NULL, NULL, 3, 3), (9, 39。del39。, NULL, 1, NULL, NULL, 3, 3), (10, 39。add39。, NULL, 1, NULL, NULL, 3, 3), (11, 39。update39。, NULL, 1, NULL, NULL, 3, 3)。 這里 admin 是項(xiàng)目( APP_NAME應(yīng)用程序名稱),自然是沒有 pid( 0), level 為 1 而 user 和 index 是模塊,他們的 pid為 1 ,自身 level 為 2 以此類推,就可以自行設(shè)定出各個(gè)節(jié)點(diǎn)了 14. ThinkPHP中的 RBAC 4) think_access: 用戶組 訪問控制表 (角色訪問控制表 ) 體現(xiàn)以角色為基礎(chǔ)的特征 控制角色組能訪問的權(quán)限,即控制著各個(gè)角色(即組),是否能夠訪問某個(gè)項(xiàng)目,某個(gè)模塊及某個(gè)方法 ; 在 access表當(dāng)中有的節(jié)點(diǎn),有的用戶組,才能訪問,沒在 access表中就不能訪問。 原則: 一定要先能訪問項(xiàng)目,才能訪問模塊,最后才能訪問方法 該表中一般需要填寫( 4個(gè)字段): role_id 字段: 用戶組的 id , 可以去 think_role表中去確定 node_id 字段: 節(jié)點(diǎn) id,可以去 think_node表中去確認(rèn) level 字段: 節(jié)點(diǎn)的等級(jí) ,可以去 think_node表中去確認(rèn) pid 字段: 父節(jié)點(diǎn) id,可以去 think_node表中去確認(rèn) 14. ThinkPHP中的 RBAC 可添加記錄作以下 user組 的訪問控制,如 : INSERT INTO think_access (role_id, node_id, level, module, pid) VALUES (2, 1, 1, NULL, 0), //首先能訪問 項(xiàng)目 ,項(xiàng)目的等級(jí)為 1,其父節(jié)點(diǎn) id 為 0 (2, 2, 2, NULL, 1), //接著能訪問 User模塊 ,模塊的等級(jí)為 2,其父節(jié)點(diǎn) id 為 1 (2, 3, 2, NULL, 1), //接著能訪問 Index模塊 ,模塊的等級(jí)為 2,其父節(jié)點(diǎn) id 為 1 (2, 4, 3, NULL, 2), //最后能訪問 User模塊下的 Index方法 ,模塊的等級(jí)為 3,其父節(jié)點(diǎn) id 為 2 (2, 8, 3, NULL, 3), //最后能訪問 Index模塊下的 Index方法 ,模塊的等級(jí)為 3,其父節(jié)點(diǎn) id 為 3 (2, 6, 3, NULL, 2)。 //最后能訪問 User模塊下的 add方法 ,模塊的等級(jí)為 3,其父節(jié)點(diǎn) id 為 2 以此類推。( 沒有添加的 access表的訪問記錄,一定不能訪問 ) 注:這里 admin 組可不去控制,后可通過配置文件來進(jìn)行 ―是否開啟管理員 SESSION標(biāo)識(shí) ‖的配置進(jìn)行單獨(dú)設(shè)置 14. ThinkPHP中的 RBAC ThinkPHP中 RBAC 數(shù)據(jù)庫設(shè)計(jì) 中, 5個(gè)表之間的關(guān)系 14. ThinkPHP中的 RBAC 模塊代碼部分 其步驟為: 1. 首先需要以下幾個(gè)控制器類: 1) 其中寫上數(shù)據(jù)庫中對(duì)應(yīng)的 index和增 add刪 del改 update等方法 2) 用戶模塊,同樣可寫上 index和增 add刪 del改 update等方法 3) 用于驗(yàn)證用戶(包含游客訪問)的登錄和退出 4) 公用的初始化接口 ,以實(shí)現(xiàn)對(duì)權(quán)限的驗(yàn)證和判斷,每個(gè)方法都會(huì)經(jīng)過它的調(diào)用 (若不需要驗(yàn)證的模塊,無需繼承該類) 2. 拷貝配置文件中的 RBAC各個(gè)配置項(xiàng)到 admin 應(yīng)用目錄下的 Conf/ 將 Examples/Rbac/Conf/ , array()中所有配置項(xiàng),拷貝到 Conf/ 中 (刪除以 SHOW_ 開頭的與 顯示信息有關(guān)的配置 和 ?DB_LIKE_FIELDS‘配置項(xiàng),我們一般用不到) 14. ThinkPHP中的 RBAC 3. 在 寫入 公用的初始化接口 ( 關(guān)于 ‖初始化接口 ‖,可查看手冊(cè) 模型擴(kuò)展一節(jié)) 具體為: class CommonAction extends Action{ function _initialize(){ // 初始化接口 初始化對(duì)象的方法,必調(diào)用 。 // 此處代碼只需拷貝 Example/Rbac/Lib/Action/CommonAction 。 // 中的代碼,根據(jù)情況修改 import 處的代碼,即可 } } 之后,兩個(gè)模塊, UserAction 和 IndexAction 就可以去繼承 CommonAction,并必然調(diào)用其中的初始化接口方法,進(jìn)行驗(yàn)證了 14. ThinkPHP中的 RBAC 4. PublicAction 無需繼承 CommonAction (無需驗(yàn)證 ) 具體為: class PublicAction extends Action{ //繼承 Action即可 function login(){$thisdisplay()。} function checkLogin(){。 } function logout(){。 } } 注: 。 處 只需拷貝 Example/Rbac/Lib/Action/PublicAction 中 checkLogin 和 logout中的方法, 并根據(jù)表單 設(shè)定的變量名的不同,在相應(yīng)的代碼處作適當(dāng)?shù)男薷模ㄈ纾焊挠脩裘⑷サ趄?yàn)證碼、去掉狀態(tài)、import 路徑、去掉除了保存 id的 SESSION及去掉保存信息到數(shù)據(jù)庫的代碼等等)即可 (當(dāng)然也可以自己來寫 —不推薦) 5. 最后在 /admin/Tpl/default/Public 下寫入注冊(cè)信息提交 表單 頁 ,進(jìn)行剛才一系列權(quán)限控制的測(cè)試就可以了(當(dāng)然需要 ―示例代碼 ‖中去找) 注:也可寫相應(yīng)的后臺(tái)代碼來管理之前的表中的用戶數(shù)據(jù)和權(quán)限節(jié)點(diǎn)信息 15. ThinkPHP中的模版技術(shù) ThinkPHP模版技術(shù),值得注意的幾點(diǎn): 1. display() 實(shí)際作用:將產(chǎn)生 ―項(xiàng)目目錄 /Runtime/Cache/‖ 的文件 2. Thinkphp中模版技術(shù)類似于 Smarty, 且 xml 風(fēng)格, 注意一定要進(jìn)行結(jié)束標(biāo)記的關(guān)閉 3. 關(guān)于 assign: 1) assign數(shù)組: $thisassign(―aa‖,$list) ; $list為數(shù)組 , 模版中 a) 索引下標(biāo) : {$aa[0]} b) 關(guān)聯(lián)下標(biāo) : {$aa[?id‘]} 或 {$} (而 smarty中關(guān)聯(lián)下標(biāo)只能用 {$}的形式 ) 2) assign對(duì)象: 模版中 : {$aa:id} , 采用 : 進(jìn)行成員屬性的訪問 4. 全局變量,系統(tǒng)常量等( Thinkphp中模版技術(shù)類似于 smarty ), Smarty中為 $, thinkphp中為 $ (詳見手冊(cè) ThinkPHP模版技術(shù)章節(jié),這里不再贅述 ) 15. ThinkPHP中的模版技術(shù) 5. ThinkPHP模版中的注釋 : 1) {/**/} 2) {//} , 即使用 c,java等的風(fēng)格 6. 模版中的包含操作 ,采用 include
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1