標籤:person 資料庫 diablo 管理員 檔案夾
2016年12月31,星期六
一、開啟XAMPP,在htdocs下建立一個檔案夾,用於php建立資料庫:
650) this.width=650;" src="http://s5.51cto.com/wyfs02/M00/8C/44/wKioL1hnwBGhh7uhAAM5hYResrE707.png-wh_500x0-wm_3-wmp_4-s_995447636.png" title="2016-12-28_170504.png" alt="wKioL1hnwBGhh7uhAAM5hYResrE707.png-wh_50" />
二、預備建立必要的檔案夾:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/8C/44/wKioL1hnwSmgpqLlAAHr10KAefk605.png-wh_500x0-wm_3-wmp_4-s_2842796946.png" title="2016-12-31_223014.png" alt="wKioL1hnwSmgpqLlAAHr10KAefk605.png-wh_50" />
三、可用submit開啟檔案夾,在左側查看:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/8C/48/wKiom1hnwYuQo_OmAAIzO5sBqUY659.png-wh_500x0-wm_3-wmp_4-s_1776832783.png" title="2016-12-31_223123.png" alt="wKiom1hnwYuQo_OmAAIzO5sBqUY659.png-wh_50" />
四、在config檔案夾下建立一個php檔案,db.config.php,編寫資料庫連結,資料庫建立,資料庫選擇:
650) this.width=650;" src="http://s1.51cto.com/wyfs02/M01/8C/44/wKioL1hnw2jx-G6eAAIzfLTKfLc437.png-wh_500x0-wm_3-wmp_4-s_3557068820.png" title="2016-12-31_224015.png" alt="wKioL1hnw2jx-G6eAAIzfLTKfLc437.png-wh_50" />
四(2)、開啟Navicat for mysql軟體,點擊右側diablo,F5重新整理
建立成功可看到。
650) this.width=650;" src="http://s5.51cto.com/wyfs02/M02/8C/44/wKioL1hnxvLDcx9pAABC6z24vok635.png-wh_500x0-wm_3-wmp_4-s_575632583.png" title="2016-12-31_225525.png" alt="wKioL1hnxvLDcx9pAABC6z24vok635.png-wh_50" />
四(3)、事先準備了建立資料表的資料,用Navicat for mysql軟體建立了class表、guanliyuan表、person表:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/8C/48/wKiom1hnx-GAwv8_AAEZEiAbyIY175.png-wh_500x0-wm_3-wmp_4-s_2399154847.png" title="2016-12-31_225918.png" alt="wKiom1hnx-GAwv8_AAEZEiAbyIY175.png-wh_50" />
五、在admin檔案夾下建立(註冊)regist.html檔案,和(管理員)
administrator.php檔案。建立<from>表,與administrator.php檔案建立串連
,<form action="./administrator.php" method="post" >:
650) this.width=650;" src="http://s1.51cto.com/wyfs02/M01/8C/44/wKioL1hnxO6A9CyHAAIP5Y3pOjI746.png-wh_500x0-wm_3-wmp_4-s_2254596344.png" title="2016-12-31_224655.png" alt="wKioL1hnxO6A9CyHAAIP5Y3pOjI746.png-wh_50" />
六、完成後用瀏覽器開啟的效果
650) this.width=650;" src="http://s2.51cto.com/wyfs02/M02/8C/48/wKiom1hnxVXwXzwtAAC2VdxPvP0659.png-wh_500x0-wm_3-wmp_4-s_3158642949.png" title="2016-12-31_224803.png" alt="wKiom1hnxVXwXzwtAAC2VdxPvP0659.png-wh_50" />
七、關鍵步驟,在(管理員)administrator.php檔案中分別寫出
驗證使用者名稱、密碼、二次密碼的Regex,並用if函數判斷:
為使代碼清晰,分布進行操作:
650) this.width=650;" src="http://s4.51cto.com/wyfs02/M01/8C/44/wKioL1hnyVmiCGX2AAI2c_-OnfI064.png-wh_500x0-wm_3-wmp_4-s_3627360854.png" title="2016-12-31_230540.png" alt="wKioL1hnyVmiCGX2AAI2c_-OnfI064.png-wh_50" />
1.代碼中分別echo輸出username(使用者名稱),password(密碼),repassword(再次確認密碼)。並分別設定$變數$name、$pass、$zaicipass、
注意:trim函數刪除字串首尾的空白。
2.$pat為驗證使用者名稱有效性的Regex,本人設為以大小寫字母開頭3到6位,以0-9數字結尾,3到18。
3.$repat為驗證兩次密碼有效性的Regex,規則同上。
八、首先判斷使用者名稱不可為空白,格式錯誤:
650) this.width=650;" src="http://s2.51cto.com/wyfs02/M02/8C/48/wKiom1hny8qSiEtGAAHev-rc_sk023.png-wh_500x0-wm_3-wmp_4-s_3141011310.png" title="2016-12-31_231535.png" alt="wKiom1hny8qSiEtGAAHev-rc_sk023.png-wh_50" />
註:empty()函數用來測試變數是否已經配置。若變數已存在、非Null 字元串或者非零,則返回 false 值;反之返回 true。
如果$name為空白,則輸出echo內容。header跳回註冊頁regist.html.
加入die()函數不執行之後的代碼。
preg_match函數用於正則判斷,else if(!preg_match($pat,$name))
如果$name格式不符合$pat正則,則echo“使用者名稱格式錯誤”
header,die函數效果如上。
九、驗證密碼格式:
650) this.width=650;" src="http://s2.51cto.com/wyfs02/M00/8C/48/wKiom1hnzuPQQz5eAAHkbmJaH_M121.png-wh_500x0-wm_3-wmp_4-s_3996861951.png" title="2016-12-31_232841.png" alt="wKiom1hnzuPQQz5eAAHkbmJaH_M121.png-wh_50" />
註: preg_match函數用於正則判斷,如果(!preg_match($repat,$pass))
則echo“密碼格式不正確”
else if ($pass!=$zaicipass)判斷兩次密碼是否一致,若不一致
echo“兩次密碼不一致”
header,die函數效果同上。
十、入庫、引用資料庫檔案:
650) this.width=650;" src="http://s5.51cto.com/wyfs02/M01/8C/48/wKiom1hn0HzQ3J8FAAHM_izGx48930.png-wh_500x0-wm_3-wmp_4-s_1592431105.png" title="2016-12-31_233454.png" alt="wKiom1hn0HzQ3J8FAAHM_izGx48930.png-wh_50" />
註:這裡引入的是Navicat for mysql中的guanliyuan表,所以用
insert into guanliyuan。並為其設定一個變數$userdata。
md5用於對密碼的加密。
進行判斷:
650) this.width=650;" src="http://s5.51cto.com/wyfs02/M02/8C/48/wKiom1hn0nzRIRCeAAHqHVW7JQ8188.png-wh_500x0-wm_3-wmp_4-s_4090595830.png" title="2016-12-31_234345.png" alt="wKiom1hn0nzRIRCeAAHqHVW7JQ8188.png-wh_50" />
注:mysql_query函數查詢連結:
mysql_error函數可顯示錯誤資訊。
650) this.width=650;" src="http://s1.51cto.com/wyfs02/M02/8C/44/wKioL1hn1EbRj5JzAADdAac0Lrg669.png-wh_500x0-wm_3-wmp_4-s_719271592.png" title="2016-12-31_235224.png" alt="wKioL1hn1EbRj5JzAADdAac0Lrg669.png-wh_50" />
利用php建立資料庫練習,註冊