日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

用户管理系统_【20201204】做个用户管理系统(18)——注册功能的实现(三)...

發(fā)布時間:2024/1/23 windows 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用户管理系统_【20201204】做个用户管理系统(18)——注册功能的实现(三)... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1. 介紹

1.1 介紹

福哥今天要帶著大家開發(fā)TFUMS系統(tǒng)的注冊功能的處理程序了。這個處理程序會調(diào)用模型user的add方法進(jìn)行創(chuàng)建用戶的操作,模型user的add方法會先檢查用戶名是否被占用了,如果沒有被占用才能進(jìn)一步完成創(chuàng)建用戶的操作,否則會報錯。

如果處理程序報錯的話,會返回錯誤碼和錯誤信息。這個錯誤碼需要我們定義好,一般情況下錯誤碼一個是7位或者8位的整型數(shù)字,這個數(shù)字分為兩段,前面一段作為模塊的計數(shù)區(qū)域,后面一段是模塊可能的錯誤信息對應(yīng)的錯誤碼。

2. 錯誤碼信息

錯誤碼信息福哥給放到了Config.inc.php這個配置文件里面了。因?yàn)殄e誤碼本身不需要寫成程序,只要約定俗成就可以了。所以,福哥使用一個塊注釋將錯誤碼信息框了起來。

/* * Error code and message * * 1001000 ( member ) * 1001001 - 錯誤請求 * 1001002 - 用戶名已經(jīng)存在 * 1001003 - 創(chuàng)建用戶失敗 * */

3. 注冊表單處理程序

注冊表單處理程序就是api/member/register.inc.php這個接口控制器,它主要負(fù)責(zé)檢查輸入數(shù)據(jù),完成創(chuàng)建用戶的操作。

3.1 代碼

protected function process(){ $user = new user($this->tfphp); $post = $this->tfphp->getRequest()->post; $userName = $post->get("user"); $userPass = $post->get("pass"); $confirmUserPass = $post->get("confirmPass"); if($userName == "" || $userPass != $confirmUserPass){ return $this->tfphp->getResponse()->responseJSON_CM(200, 1001001, "錯誤請求"); } $ret = $user->add($userName, $userPass); switch ($ret){ case 1: return $this->tfphp->getResponse()->responseJSON_CM(200, 1001002, "用戶名已經(jīng)存在"); break; case 2: return $this->tfphp->getResponse()->responseJSON_CM(200, 1001003, "創(chuàng)建用戶失敗"); break; } $newId = $user->getLastUserID(); return $this->tfphp->getResponse()->responseJSON_CM(200, 0, "OK", array( 'userid'=>$newId, ));}

4. 注冊表單JS程序

福哥還對JS程序進(jìn)行了一些調(diào)整,主要是對接處理程序的邏輯,使JS程序可以正確響應(yīng)處理程序返回的結(jié)果。

4.1 代碼

$('form').form({ url: "api/member/register", method: "post", validations: [ {type:"empty", name:"user", msg:"請?zhí)顚懹脩裘?#34;}, {type:"min", value:2, name:"user", msg:"用戶名最少2個字"}, {type:"max", value:20, name:"user", msg:"用戶名最多20個字"}, {type:"re", value:/^[^\`\~\!\@\#\$\%\^\&\*\(\)\[\]\{\}\-\_\+\|\\\:\;\"\'\\,\.\?\/]/, name:"user", msg:"用戶名不能以符號開頭"}, {type:"empty", name:"pass", msg:"請?zhí)顚懨艽a"}, {type:"min", value:6, name:"pass", msg:"密碼最少6個字"}, {type:"empty", name:"confirmPass", msg:"請?zhí)顚懘_認(rèn)密碼"} ], onValidationManual: function(form){ if($(form).find('[name="pass"]').val() != $(form).find('[name="confirmPass"]').val()){ this.postValidationError(form, "pass", "兩次輸入的密碼不一樣"); return false; } }, onSuccess: function (d) { if(d.errcode == 0){ document.location = 'server->BASE_URI %>'; } else{ $('form').tips({ text:d.errmsg }); } }, onError: function (d) { $('form').tips({ text:"服務(wù)器響應(yīng)錯誤" }); }, onValidationError: function (form, name, msg) { $('form').tips({ text:msg }); $('form').find('[name="'+ name +'"]').focus(); }});

5. 講解

5.1 注冊表單處理程序

首先通過post拿到表單提交的數(shù)據(jù),包括用戶名、密碼、確認(rèn)密碼。

接著檢查表單提交的數(shù)據(jù)的合法性,如果不合法就報一個“錯誤請求”即可,因?yàn)檎G闆r下JS程序就會檢查這些數(shù)據(jù)了,所以到處理程序這里還會有不合法情況基本都是黑客所為。

嘗試使用模型user的add方法創(chuàng)建指定的用戶,因?yàn)閍dd方法的結(jié)果的多態(tài)的,所以使用switch判斷結(jié)果碼并提示錯誤信息。

如果add方法返回0則表示創(chuàng)建用戶成功了,直接返回0即可。

5.2 注冊表單JS程序

在onSuccess方法里判斷,如果結(jié)果碼為0就表示成功了,跳轉(zhuǎn)頁面到首頁去。否則就是處理錯誤了,根據(jù)結(jié)果碼和結(jié)果信息顯示錯誤提示信息給用戶。

6. 總結(jié)

今天福哥帶著大家完成了注冊功能的最后一步,我們通過模型user的add方法實(shí)現(xiàn)了用戶注冊的功能。這是一個范本功能,也就是說后面做其他表單功能的時候就會簡單多了,所謂舉一反三就是這個道理了。

不過,注冊頁面福哥還欠大家一個驗(yàn)證碼功能沒有實(shí)現(xiàn),這個需要用到PHP的GD庫了。

下一課,福哥將帶著童鞋們制作表單的圖片驗(yàn)證碼功能。


【20201203】做個用戶管理系統(tǒng)(17)——注冊功能的實(shí)現(xiàn)(二)

【20201202】做個用戶管理系統(tǒng)(16)——注冊功能的實(shí)現(xiàn)(一)


免費(fèi)看文章,自己學(xué)技術(shù)


每一篇文章都是福哥一個字一個字地敲出來的,都是福哥原創(chuàng)的。

每一篇文章都是經(jīng)過了福哥的反復(fù)驗(yàn)證的,都是可以正常使用的。


總結(jié)

以上是生活随笔為你收集整理的用户管理系统_【20201204】做个用户管理系统(18)——注册功能的实现(三)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。