更新時(shí)間:2019年01月04日10時(shí)29分 來(lái)源:PHP培訓(xùn) 瀏覽次數(shù):
設(shè)計(jì)框架:
數(shù)據(jù)庫(kù):使用的是mysql數(shù)據(jù)庫(kù),庫(kù)名為gbook,庫(kù)下面一共三個(gè)表:gbook、user和admin,gbook用來(lái)存儲(chǔ)留言簿內(nèi)容,包括主題、內(nèi)容、回復(fù)和時(shí)間等等。user用來(lái)存儲(chǔ)普通用戶的賬號(hào)信息,包括用戶名和密碼,admin用來(lái)存儲(chǔ)管理員的賬號(hào)信息,也是用戶名和密碼。
用戶界面
index.php: 用戶主界面,顯示了所有的留言,每個(gè)留言后面都有評(píng)論按鈕,點(diǎn)進(jìn)去并能進(jìn)入評(píng)論界面,下面是用戶登錄注冊(cè)界面。
login.php:用戶登錄的處理頁(yè)面。
register.php:用戶注冊(cè)界面。
register_user.php:用戶注冊(cè)的處理界面。
conn.php:數(shù)據(jù)庫(kù)連接,可以被其他登錄、注冊(cè)、編輯和查詢等與數(shù)據(jù)庫(kù)有交互的頁(yè)面復(fù)用。
add.php:添加新的留言至主界面。
reply.php:用戶評(píng)論界面,顯示的是用戶所要評(píng)論的主題的全部評(píng)論,添加評(píng)論到該主題。
add_reply.php:添加評(píng)論至該主題。
clear_cookie.php:在用戶退出登陸后清除cookie。
管理員界面:
admin.php:管理員主界面,可以查看所有留言和評(píng)論,可以刪除特定的留言或評(píng)論。管理員界面有登錄入口但是沒(méi)有注冊(cè)入口,可以直接在數(shù)據(jù)庫(kù)中插入管理員的信息。
login_admin.php:管理員登錄處理頁(yè)面。
conn.php:數(shù)據(jù)庫(kù)連接,可以被其他登錄、注冊(cè)、編輯和查詢等與數(shù)據(jù)庫(kù)有交互的頁(yè)面復(fù)用。
clear_cookie.php:在管理員退出登陸后清除cookie。
代碼地址:github地址
總結(jié):
1.應(yīng)該在以后多整合界面,讓界面數(shù)更少,比如直接將登錄的工作放在主界面上完成,而不是再寫一個(gè)登錄頁(yè)面去完成這些工作。
2.在本次實(shí)踐中,cookie用來(lái)記錄用戶登錄信息,session用來(lái)記錄用戶登錄狀態(tài),使用cookie來(lái)讓頁(yè)面刷新時(shí)依然可以保持登錄,使用session來(lái)判斷用戶是否登陸上。cookie保存在客戶端,session保存在服務(wù)端。
3.寫代碼前一定要好好想每個(gè)界面要實(shí)現(xiàn)的功能,什么操作最應(yīng)該由那個(gè)界面來(lái)完成,尤其是當(dāng)兩個(gè)php之間有交互時(shí)更應(yīng)該考慮設(shè)計(jì)問(wèn)題。
4.isset用于判斷變量是否被定義且不為NULL,empty用來(lái)判斷變量是否被賦值。
5.post不會(huì)在url中顯示信息,如果是用戶登錄和注冊(cè)推薦使用post。
6.php可以通過(guò)echo向html傳遞值,html可以通過(guò)form等向php提交變量和參數(shù),如果submit的操作需要傳入一些參數(shù)??梢允褂?rdquo;hidden”類型的輸入。
7.適當(dāng)使用ajax來(lái)刷新頁(yè)面部分內(nèi)容,比如用戶登錄等小界面。
北京校區(qū)