今天我們就來分析微社區的基本功能構成吧。首先,每個論壇最主要的是會員在對應的版塊下發帖,或者在感興趣的主題帖下跟帖蓋樓。其次,會員能時時看到帖子或版塊的基本信息。所以主要大塊是: 前臺:會員的註冊登錄,瀏覽版塊,發帖,跟帖,對自己的帖子操作,回覆別人的帖子 後臺:管理員對版塊進行分級管理,添加或修改 ...
今天我們就來分析微社區的基本功能構成吧。首先,每個論壇最主要的是會員在對應的版塊下發帖,或者在感興趣的主題帖下跟帖蓋樓。其次,會員能時時看到帖子或版塊的基本信息。所以主要大塊是:
-
前臺:會員的註冊登錄,瀏覽版塊,發帖,跟帖,對自己的帖子操作,回覆別人的帖子
-
後臺:管理員對版塊進行分級管理,添加或修改刪除,對會員管理等等
微社區的幾個主要功能:
一.人員
1.管理員:論壇後臺的版塊添加,刪除等其他管理操作
2.會員:論壇前臺的瀏覽,發主題帖子或回覆別人的帖子(需要在指定版塊下)
二.版塊
有後臺管理人員發佈整理論壇的版塊,發佈者是分區版主,發佈的同時可以添加增加當前版塊的副版主
三.帖子:帖子就是內容,選在一個版塊下由會員發表。
1.主題帖:會員個人在某版塊下發佈的(作者就是發帖人)
2.回覆帖:會員本人在別人發佈主題帖下的評論(蓋樓)。其中一樓(沙發),二樓(板凳),三樓(地板)
四.驗證題
為了防止發帖機或者惡意註冊和發帖的程式,使用隨機題目答題才能進行發帖提交到庫,比隨機圖片稍微安全(因為現在有很多圖片識別技術,所以需要手動更好點)
五.上傳文件
發帖中的圖片或者會員的頭像上傳等等。
六.帖子類別
1.原創
2.轉帖
3.分享
4.求助
5.活動
微社區資料庫模
1.board:版塊(id,pid,name,desc,uid,moderator,vice_moderator,add_time)
2.posts:帖子(id,bid,mid,uid,turn_id,type_id,title,content,tags,hits,source,is_essence,ip,add_time,is_remommed)
3.verify:驗證題(id,question,type,answer1,answer2)
4.file:文件(id,uid,post_id,type,size,add_time)
5.user:人員(id,user,pwd,nickname,login_count,last_login_ip,last_login_time,state)
6.post_type:帖子類別(id,cate_name,state)
後臺管理模塊
1.版塊管理(列表,添加,修改,刪除)
2.帖子審核(前臺會員請求加精,後臺人員審核)
前臺管理模塊
1.帖子管理(會員只能對自己的帖子進行修改或刪除[可能可以對別人的帖子進行回覆])
2.帖子發佈(選擇一個版塊,再選擇一種帖子類別,寫標題,標簽,內容,和回答問題即可提交)
基本頁面
1.index主頁:以所有一級版塊下的子版塊迴圈列表,接受一個一級版塊id展示其下的所有子版塊的基本信息(版塊名,版主,副版主,今日新帖,主題帖數,總帖數,最後更新的帖子信息(會員名,標題,時間等))
2.forumdisplay進入二級版塊頁面:通過接受二級版塊id展示下麵所有主題帖子(基本信息是:主題帖名稱,作者,跟帖數/訪問數,最後更貼的信息(時間,是誰)),分頁顯示,嵌入發帖的編輯框和一個發帖調轉單獨按鈕
3.post發新帖表單單獨頁面
4.viewthread進入主題帖的詳情頁面,現在主題帖子和下麵所有跟帖及會員的基本信息(頭像|昵稱|主題帖|共發帖)
5.admin後臺管理頁面:負責添加版塊,修改,刪除等
………………
公共類
1.cls_mysql:php操作mysql的基本方法
2.cls_content:對帖子的列表,添加,刪除,修改等操作的方法
3.cls_board:對版塊的顯示,修改,添加,刪除等操作方法
包含文件
1.inc.php:包含smarty,三個公共類,config配置文件,進行實例化三個公共類及模板引擎的配置
配置文件
1.config.php: 資料庫基本設置
頁面數據塊
1.二級版塊頁面:從主頁的頂級版塊下點擊二級版塊名進入,帶當前二級版塊id
基本構成:
(1).當前版塊名
(2).當前版塊的版主和副版主們
(3).羅列當前版塊下的所有主題帖子:
a.可根據帖子類別篩選(預設全部[1.討論 2.原創 3.轉載 4.求助])
b.類表可以分頁
(4).在當前版塊下發佈帖子的表單
當前版塊下主題帖欄位:
(1).主題帖子的標題
(2).主題帖的發佈者及他的最後登錄時間
(3).該主題帖的跟帖數量和訪問數量
(4).該主題帖子最後跟帖(跟帖時間,跟帖網友昵稱)
2 .………………
--- 待續 ---
這個目前沒有使用任何框架,原生php外加一個模板引擎製作,代碼相對比較簡單,方便閱讀,就是自己封裝了幾個操作類和一個原生ajax函數,其他的基本是業務增刪改查,後期我會放在github上,請持續關註此公眾號,後面我會把開源地址奉上,共同學習成長!
以下個人公眾號(ZEROFC_DEV)