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

正文內(nèi)容

基于php框架的社區(qū)論壇管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文-在線瀏覽

2024-07-29 17:16本頁面
  

【正文】 Zend Studio可以在Linux、Windows、Mac OS X上運(yùn)行。通過完全的PHP5支持、編碼分析器、編碼組合功能、語法檢索、項(xiàng)目管理器、編碼編輯器、繪圖調(diào)試器(向?qū)В?。PHP的標(biāo)準(zhǔn)記錄工具PHP文檔記錄器:非常容易記錄PHP代碼、程序應(yīng)用和方案。 Yii框架Yii是一個(gè)基于組件的高性能PHP框架,用于開發(fā)大型Web應(yīng)用。從 MVC,DAO/ActiveRecord,widgets,caching,等級(jí)式RBAC,Web服務(wù),到主題化,I18N和L10N,Yii提供了今日Web [7]。 Yii 具有高度的可重用性和可擴(kuò)展性,是純粹的面向?qū)ο蟮?。更重要的是Yii有著越來越多的擴(kuò)展庫。 SphinxSphinx是一個(gè)基于SQL的全文檢索引擎,可以結(jié)合MySQL,PostgreSQL做全文搜索,它可以提供比數(shù)據(jù)庫本身更專業(yè)的搜索功能,使得應(yīng)用程序更容易實(shí)現(xiàn)專業(yè)化的全文檢索。Sphinx單一索引最大可包含1億條記錄,(毫秒級(jí))。 UEditorUEditor是一種輕量、可定制開源富文本編輯器,開源基于BSD協(xié)議,所有源代碼在協(xié)議允許范圍內(nèi)可自由修改和使用。UEditor中所有的功能型實(shí)現(xiàn)都是通過命令插件層中的命令和插件來完成的,并且各個(gè)命令和插件之間基本互不耦合——使用者需要使用哪個(gè)功能就導(dǎo)入哪個(gè)功能對(duì)應(yīng)的命令或者插件文件,完全不用考慮另外那些雜七雜八的JS文件。而插件隨編輯器的初始化而初始化,性能上會(huì)有少許的影響,但相比命令而言,插件能夠完成更加復(fù)雜的功能。這個(gè)特點(diǎn)使得為編輯器添加任何功能都可以在插件中獨(dú)立完成。一個(gè)BBS論壇可以大致分為以下流程:用戶登錄進(jìn)入論壇(一半為游客,有時(shí)候注冊(cè)為會(huì)員),就某個(gè)話題展開討論。管理員通過功能創(chuàng)建、編輯、刪除論壇的版塊,管理帖子。 系統(tǒng)分析論壇管理系統(tǒng)最重要的就是前臺(tái)瀏覽論壇和后臺(tái)管理論壇數(shù)據(jù)兩部分,本系統(tǒng)對(duì)兩部分的架構(gòu)都做了詳細(xì)的設(shè)計(jì),前臺(tái)主要包括用戶個(gè)人管理和論壇內(nèi)容展示兩個(gè)部分,而后臺(tái)主要包括會(huì)員管理,分區(qū)管理,板塊管理,文章管理和回帖管理五個(gè)部分。從軟件的角度上講,數(shù)據(jù)庫技術(shù)也已經(jīng)相當(dāng)成熟,比如本系統(tǒng)所用處理能力很強(qiáng)的Mysql數(shù)據(jù)庫,同時(shí)基于Yii框架進(jìn)行開發(fā),將試圖、模型已經(jīng)進(jìn)行了分層,減少了耦合,提高了代碼的重用性。Apache是最通用的網(wǎng)絡(luò)服務(wù)器;Mysql是帶有基于網(wǎng)絡(luò)管理附加工具的關(guān)系數(shù)據(jù)庫;PHP是流行的對(duì)象腳本語言,它包含了多數(shù)其它語言的優(yōu)秀特征來使得它的網(wǎng)絡(luò)開發(fā)更加有效[9]。B/S一種網(wǎng)絡(luò)結(jié)構(gòu)模式,WEB瀏覽器是客戶端最主要的應(yīng)用軟件。客戶機(jī)上只要安裝一個(gè)瀏覽器,如Internet Explorer,服務(wù)器安裝SQL Server、Oracle、MYSQL等數(shù)據(jù)庫。 系統(tǒng)安全性用戶登錄密碼采用MD5加密算法。密碼同時(shí)也不易遺失。PDO類能防止SQL注入,使網(wǎng)站系統(tǒng)更加健壯[11]。像百度貼吧未登錄發(fā)貼要輸入驗(yàn)證碼大概是防止大規(guī)模匿名回帖的發(fā)生目前,不少網(wǎng)站為了防止用戶利用機(jī)器人自動(dòng)注冊(cè)、登錄、灌水,都采用了驗(yàn)證碼技術(shù)。 功能設(shè)計(jì)結(jié)合目前互聯(lián)網(wǎng)各大論壇核心業(yè)務(wù)的分析,制定BBS論壇管理系統(tǒng)建設(shè)方案。功能設(shè)計(jì)上本系統(tǒng)主要包括七大功能:個(gè)人用戶管理功能、論壇內(nèi)容展示功能、會(huì)員管理功能、分區(qū)管理功能、版塊管理功能、文章管理功能和回帖管理功能。個(gè)人用戶管理功能:用戶訪問論壇首頁進(jìn)行登錄,沒有賬號(hào)可以進(jìn)行注冊(cè),然后進(jìn)入論壇添加用戶的詳細(xì)信息,包括頭像,郵箱等等,以及對(duì)所有表單數(shù)據(jù)的驗(yàn)證。該系統(tǒng)采用UE編輯器,使發(fā)表文章時(shí)有更加豐富的內(nèi)容。在文章詳細(xì)頁面可以查看每個(gè)用戶的頭像等詳細(xì)信息。會(huì)員也可以添加分區(qū)及板塊分區(qū)管理功能:管理員可以添加分區(qū),對(duì)分區(qū)進(jìn)行操作。版塊管理功能:管理員可以添加板塊,對(duì)版塊進(jìn)行操作。文章管理功能:管理員對(duì)前臺(tái)用戶發(fā)表的文章進(jìn)行管理,對(duì)不符合論壇要求的相關(guān)內(nèi)容進(jìn)行刪除。BBS論壇故管理系統(tǒng)個(gè)人用戶管理功能分區(qū) 管理功能會(huì)員管理功能論壇內(nèi)容展示功能版塊管理功能回帖管理功能文章管理功能圖32 概要設(shè)計(jì)功能模塊圖 數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì)是項(xiàng)目開發(fā)中的系統(tǒng)設(shè)計(jì)中非常重要的一個(gè)關(guān)鍵環(huán)節(jié),之所以強(qiáng)調(diào)數(shù)據(jù)庫的重要性,是因?yàn)槿绻O(shè)計(jì)不好,在后來的系統(tǒng)維護(hù)、變更和功能擴(kuò)充時(shí),甚至在系統(tǒng)開發(fā)過程中,將會(huì)引起比較大的問題,會(huì)遇到非常大的困難,大量工作將會(huì)重新進(jìn)行。用戶信息表(bbs_user)主要是存儲(chǔ)系統(tǒng)用戶的相關(guān)信息以及使用權(quán)限,只用在這個(gè)表中存在的用戶并且有一定權(quán)限才能登錄到系統(tǒng)的后臺(tái)業(yè)務(wù)界面,表中沒有權(quán)限的用戶只能查看本論壇系統(tǒng)的前臺(tái)展示部分,展示部分也可以登錄的,論壇系統(tǒng)最重要的就是用戶,所以用戶基本信息表的設(shè)計(jì)十分重要,用戶基本信息表的設(shè)計(jì)如表31所示。 表32 用戶詳細(xì)信息表序號(hào)數(shù)據(jù)庫字段 類型存儲(chǔ)內(nèi)容1Uid整型用戶ID2Age整型年齡3Sex枚舉性別4Tname文本用戶昵稱5Email文本郵箱6Edu枚舉學(xué)歷7Signed文本個(gè)性簽名8Face文本頭像論壇分區(qū)表(bbs_part)存儲(chǔ)的是論壇所有分區(qū)信息,字段主要包括分區(qū)ID和分區(qū)名稱。表33 論壇分區(qū)表序號(hào)數(shù)據(jù)庫字段 類型存儲(chǔ)內(nèi)容1Id整型分區(qū)ID2Name文本分區(qū)名稱論壇版塊表(bbs_category)存儲(chǔ)的是論壇所有分區(qū)下版塊信息,字段主要包括版塊ID和版塊名稱。表34 論壇版塊表序號(hào)數(shù)據(jù)庫字段 類型存儲(chǔ)內(nèi)容1Id整型分區(qū)ID2Name文本分區(qū)名稱3Pid整型所屬分區(qū)ID文章表(bbs_article)存儲(chǔ)論壇所有文章信息,包括文章的標(biāo)題、內(nèi)容、發(fā)布時(shí)間等,文章表結(jié)構(gòu)設(shè)計(jì)如表35所示。 表36 評(píng)論表序號(hào)數(shù)據(jù)庫字段 類型存儲(chǔ)內(nèi)容1Id整型評(píng)論ID2Content文本評(píng)論內(nèi)容3Uid整型發(fā)布人的ID4Aid整型所屬文章5Pubtime整型 發(fā)布時(shí)間根據(jù)論壇系統(tǒng)的需求和功能,對(duì)數(shù)據(jù)庫的設(shè)計(jì)進(jìn)行了全面分析,數(shù)據(jù)庫選擇用Mysql數(shù)據(jù)庫,Mysql數(shù)據(jù)庫中有Innodb,myisam等幾種引擎,論壇系統(tǒng)多為插入操作,所以選擇Innodb引擎[13],在前后臺(tái)的操作中,對(duì)經(jīng)常操作的字段添加索引,比如在文章表中的作者ID和所屬版塊ID中添加普通索引。若讓數(shù)據(jù)庫管理員看到對(duì)象名就了解這個(gè)數(shù)據(jù)庫對(duì)象所起的作用,恐怕會(huì)比較困難。為此,制定一個(gè)數(shù)據(jù)庫對(duì)象的前綴BBS。為各表之間添加必要的關(guān)聯(lián)外鍵。內(nèi)存緩存采用Memcache。使用緩存可以提高效率,盡量減少對(duì)數(shù)據(jù)庫的壓力,提高頁面相應(yīng)速度[14]。簡單的說就是將數(shù)據(jù)調(diào)用到內(nèi)存中,然后從內(nèi)存中讀取,從而大大提高讀取速度。Sphinx創(chuàng)建索引的速度為:創(chuàng)建100萬條記錄的索引只需 3~4分鐘,創(chuàng)建1000萬條記錄的索引可以在50分鐘內(nèi)完成,而只包含最新10萬條記錄的增量索引,重建一次只需幾十秒。 個(gè)人用戶管理功能本小節(jié)主要介紹的是在開發(fā)個(gè)人用戶管理功能模塊過程中所遇到的問題,以及解決問題的方法,即實(shí)現(xiàn)方法。(2)實(shí)現(xiàn)方法前臺(tái)修改用戶個(gè)人信息界面如圖41所示。 $white=imagecolorallocate($i, 255, 255, 255)。 $arr=getimagesize($sPath)。 $sH=$arr[1]。mime39。 switch($sType){ case 39。: case 39。: $funName=jpeg。 case 39。: $funName=gif。 case 39。: $funName=png。 default: return false。 $s=$trueFunName($sPath)。 $biliH=$sH/$toH。 }else{ $trueBili=$biliH。 $trueH=$sH/$trueBili。 $toY=($toH$trueH)/2。 $fileArr=explode(/,$sPath)。 $newName=$prefix.$oldName。 return $saveFunName($i,$savePath./.$newName)。該系統(tǒng)采用UE編輯器,使發(fā)表文章時(shí)有更加豐富的內(nèi)容。在文章詳細(xì)頁面可以查看每個(gè)用戶的頭像等詳細(xì)信息。系統(tǒng)首頁部分截圖如圖42所示。系統(tǒng)界面如圖43所示。例如點(diǎn)擊文章的緩存原理文章,系統(tǒng)界面如圖44所示。 圖45 發(fā)表文章界面 會(huì)員管理功能管理員可以添加會(huì)員,對(duì)會(huì)員的個(gè)人信息進(jìn)行管理,刪除會(huì)員。 添加會(huì)員功能本小節(jié)主要介紹的是會(huì)員管理中的添加會(huì)員功能,以及這些功能是調(diào)用的那部分函數(shù)。添加會(huì)員界面如圖46所示。首先實(shí)例化用戶對(duì)象,指定場景為useradd,以便于編寫規(guī)則,然后驗(yàn)證,如果是真,則插入數(shù)據(jù)庫,最后恢復(fù)密碼以及重復(fù)密碼為空。 $usermodelscenario = 39。 if(!empty($_POST[39。])){ $usermodelattributes = $_POST[39。]。 $usermodelrtime = time()。REMOTE_ADDR39。 $usermodelisadmin = 39。 if($usermodelinsert()){ $profilemodel = new Profile()。 $profilemodel = $_POST[39。][39。]。info39。用戶名添加成功39。 }else{ Yii::app()usersetFlash(39。,39。)。info39。用戶名添加失敗39。 } } } $usermodelpassword = 39。 $usermodelrepass = 39。 $thisrender(useradd,array(39。=$usermodel))。ul id=tabsmenu class=tabsmenu li class=activea href=tab1會(huì)員管理/a/li /ul div id=tab1 class=tabcontent h3 align=center添加會(huì)員/h3 ?php $form = $thisbeginWidget(39。) ? div class=form div class=form_row ?php echo $formlabelEx($model,39。) ??php echo formtextField($model,39。,array(39。=39。)) ? /div div class=form_row ?php echo $formlabelEx($model,39。) ? ?php echo $formpasswordField($model,39。,array(39。=39。)) ? /div div class=form_row ?php echo $formlabelEx($model,39。) ? ?php echo $formpasswordField($model,39。,array(39。=39。)) ? /div div class=form_row ?php echo $formlabelEx($model,39。) ? ?php echo $formField($model,39。,array(39。=39。)) ? /div div class=form_row input type=submit class=form_submit value=添加 / /div ?php $form = $thisendWidget(39。) ? div class=clear/div ?php echo $formerror($model,39。)。password39。 echo $formerror($model,39。)。39。 if(Yii::app()userhasFlash(39。)){ echo Yii::app()usergetFlash(39。)。主要闡述系統(tǒng)運(yùn)行流程以及管理的具體代碼實(shí)現(xiàn)。會(huì)員不僅能夠在前臺(tái)發(fā)帖,還能進(jìn)入后臺(tái)進(jìn)行管理,在后臺(tái)能夠編輯會(huì)員的詳細(xì)信息,和刪除某會(huì)員。圖47 會(huì)員編輯界面圖48 會(huì)員分頁顯示界面(2)程序?qū)崿F(xiàn)我們主要利用Page組件實(shí)現(xiàn)分頁,首先實(shí)例化User對(duì)象和criterria容
點(diǎn)擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1