




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
摘要系統(tǒng)設(shè)計(jì)根據(jù)上節(jié)的系統(tǒng)分析可以知道,可以將整個(gè)論壇的功能分為前臺(tái)和后臺(tái)兩個(gè)部分,因此模塊也分為兩大類:前臺(tái)模塊和后臺(tái)模塊。用戶在前臺(tái)的注冊(cè)、登陸以及修改個(gè)人的注冊(cè)信息組合成注冊(cè)登陸模塊:用戶瀏覽模塊、瀏覽主題帖列表、查看帖子組合成瀏覽模塊;用戶發(fā)帖、回帖、編輯自己的帖子組合成發(fā)帖回帖模塊;管理員編輯帖子、刪除帖子和置頂帖子組合成管理帖子模塊。以上是四個(gè)模塊組成前臺(tái)的功能模塊。后臺(tái)模塊都是與管理員相關(guān)的,設(shè)置論壇參數(shù)單獨(dú)為后臺(tái)設(shè)置模塊;創(chuàng)建、修改和刪除版塊為管理版塊模塊;添加、刪除和設(shè)置權(quán)限為管理用戶模塊。如圖4.1所示的是論壇的模塊體系圖。圖4.1論壇的模塊體系圖4.1功能設(shè)計(jì)對(duì)于注冊(cè)用戶,在論壇系統(tǒng)中需要的功能為:注冊(cè)個(gè)人身份,登陸論壇,成功后可以修改自己的注冊(cè)信息,這些行為只與用戶自身相關(guān),設(shè)計(jì)成注冊(cè)登陸模塊;瀏覽版塊列表,選擇某版塊,顯示其下面的主題帖子列表,查看帖子內(nèi)容。這些行為是用戶讀取論壇的版塊及帖子的相關(guān)信息,設(shè)計(jì)成瀏覽模塊;發(fā)表自己的帖子,回復(fù)已有的帖子,同時(shí)也可以編輯自己的帖子。這些行為是用戶參與論壇討論,發(fā)表自己簡(jiǎn)介的,設(shè)計(jì)為發(fā)帖回帖模塊。對(duì)于管理員用戶,需要負(fù)責(zé)整個(gè)論壇的正常運(yùn)轉(zhuǎn),因此需要更多的管理功能,歸納為:具備注冊(cè)用戶的功能,即管理員也是論壇用戶;管理帖子,管理員對(duì)論壇的帖子有監(jiān)督的權(quán)利,好的帖子要獎(jiǎng)勵(lì),壞的帖子要及時(shí)刪除,置頂帖子,這些行為都是對(duì)帖子的操作,設(shè)計(jì)成管理帖子模塊;管理版塊,論壇建設(shè)成功后,需要管理員進(jìn)行創(chuàng)建、修改版塊信息,設(shè)計(jì)成管理版塊模塊;管理用戶,用戶注冊(cè)成功后,需要管理員賦予權(quán)限,才能使用論壇的相關(guān)功能。同時(shí),管理員可以自主添加、刪除用戶,這些針對(duì)用戶信息的操作,設(shè)計(jì)成管理用戶模塊。通過分析得到用戶整體用例圖,如圖4.2所示:圖4.2用戶整體用例圖4.2界面設(shè)計(jì)4.3論壇主頁(yè)面index.php論壇主題帖列表顯示頁(yè)面forums.php如圖4.4所示。圖4.4論壇主題帖列表顯示頁(yè)面forums.php論壇帖子內(nèi)容及回帖查看頁(yè)面如圖4.5所示如圖4.5帖子內(nèi)容及回帖頁(yè)面thread.php發(fā)新帖頁(yè)面如圖4.6所示圖4.6登陸用戶發(fā)帖頁(yè)面用戶登陸頁(yè)面如圖4.7所示圖4.7用戶登陸界面login.php4.3安全設(shè)計(jì)論壇系統(tǒng)存儲(chǔ)了大量的敏感數(shù)據(jù),它關(guān)系到管理員和普通用戶雙方的利益,系統(tǒng)運(yùn)行的過程中,論壇管理員和用戶的操作都要涉及到這些敏感數(shù)據(jù)的處理,所以本論壇對(duì)系統(tǒng)的安全行要求非常高,數(shù)據(jù)庫(kù)的安全保密就是保證數(shù)據(jù)庫(kù)信息的完整,防止非授權(quán)用戶竊取或者篡改數(shù)據(jù)信息。為了保證本系統(tǒng)數(shù)據(jù)庫(kù)的安全,主要采用了論壇用戶的安全管理、身份認(rèn)證和加密技術(shù)等安全機(jī)制來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的安全。MySQLSERVER主要完成對(duì)數(shù)據(jù)庫(kù)對(duì)象的存儲(chǔ)、管理、接收?qǐng)?zhí)行客戶機(jī)上傳來(lái)的數(shù)據(jù)指令,并將執(zhí)行結(jié)果反饋給客戶機(jī),在實(shí)現(xiàn)安全管理中支持多級(jí)安全管理機(jī)制,即在進(jìn)入系統(tǒng)前,需要驗(yàn)證用戶名和密碼。建立數(shù)據(jù)庫(kù)安全管理,對(duì)數(shù)據(jù)庫(kù)進(jìn)行存取時(shí)候,對(duì)不同的用戶給予不同的權(quán)限,以限制不同用戶操作數(shù)據(jù)庫(kù)的權(quán)限等。論壇系統(tǒng)安全性的實(shí)現(xiàn)包括:安全管理,由于系統(tǒng)用戶種類較多,由管理員負(fù)責(zé)數(shù)據(jù)庫(kù)結(jié)構(gòu)的維護(hù)、管理等工作。其他用戶只能使用數(shù)據(jù)庫(kù)中的數(shù)據(jù),但是不能更改數(shù)據(jù)庫(kù)的結(jié)構(gòu)。用戶身份認(rèn)證,論壇中包含大量的敏感數(shù)據(jù),為了保證系統(tǒng)數(shù)據(jù)在存儲(chǔ)和網(wǎng)絡(luò)傳輸?shù)倪^程中,不被未授權(quán)用戶訪問或者解讀,需用用戶名來(lái)標(biāo)明用戶身份,經(jīng)系統(tǒng)鑒別用戶的合法性后,再利用口令進(jìn)一步核實(shí)用戶身份,為保證口令的安全,在口令的提交過程中,不采用明文形式,即:先對(duì)用戶口令進(jìn)行加密然后在傳輸?shù)綌?shù)據(jù)庫(kù)中以密文的方式存儲(chǔ),這樣就可以保證他的安全性。5數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)是整個(gè)論壇系統(tǒng)的核心,負(fù)責(zé)對(duì)論壇需要信息的收集組織,存儲(chǔ),加工,抽取和傳播等功能。數(shù)據(jù)庫(kù)的設(shè)計(jì)關(guān)系系統(tǒng)的好壞,因此要做好論壇系統(tǒng),首先就要有科學(xué)的方法進(jìn)行數(shù)據(jù)庫(kù)的設(shè)計(jì)。5.1概念結(jié)構(gòu)設(shè)計(jì)根據(jù)對(duì)數(shù)據(jù)流和外部實(shí)體,數(shù)據(jù)庫(kù)所涉及到的實(shí)體及屬性的分析,得出E-R圖如圖5.1所示。圖5.1數(shù)據(jù)庫(kù)設(shè)計(jì)E-R圖5.2邏輯結(jié)構(gòu)設(shè)計(jì)E-R圖向關(guān)系數(shù)據(jù)模型轉(zhuǎn)換定義一個(gè)關(guān)系模型是一個(gè)二維表R(A1,A1,……AN),其中R為關(guān)系名,Ai為屬性名。確切的說,一個(gè)關(guān)系模型對(duì)應(yīng)一個(gè)數(shù)據(jù)庫(kù)基表。邏輯結(jié)構(gòu)設(shè)計(jì)首先是把基本的E-R圖像關(guān)系數(shù)據(jù)模型轉(zhuǎn)換,最簡(jiǎn)單的轉(zhuǎn)換可以將基本E-R圖中的每個(gè)實(shí)體定義為一個(gè)關(guān)系模型,一個(gè)聯(lián)系也是一個(gè)關(guān)系,從而得到關(guān)系模型。關(guān)系中每個(gè)屬性都是不可分割的數(shù)據(jù)項(xiàng),不允許表中有表;一個(gè)關(guān)系只是描述一個(gè)信息實(shí)體,或者實(shí)體中的一種聯(lián)系。規(guī)范化規(guī)范化是數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的指南和工具,它貫穿數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的數(shù)據(jù)分析、基本的E-R圖的設(shè)計(jì)和邏輯設(shè)計(jì)。特別在邏輯設(shè)計(jì)中,通過對(duì)關(guān)系模型R(A1,A2……AN)的函數(shù)依賴進(jìn)行模式分解??梢韵庐惓?,當(dāng)然有時(shí)為了提高查詢速度,也可以犧牲規(guī)范化程度。5.3物理結(jié)構(gòu)設(shè)計(jì)本論壇數(shù)據(jù)庫(kù)使用MySQL建立,使用可視化的MySQL管理工具PHPMyAdmin創(chuàng)建相關(guān)數(shù)據(jù)表。論壇版塊表(Forums):該表包含版塊ID,版塊名稱,版塊描述,最后更新作者,最后更新時(shí)間,版塊序號(hào),游客權(quán)限。如表5.1所示表5.1Forums表字段類型長(zhǎng)度描述IDint11版塊號(hào)Forum_namevarchar50版塊名稱Forum_descriptionvarchar200版塊描述Last_post_authorvarchar50最后更新作者Last_post_timedatetime最后更新時(shí)間Forum_ordertinyint3版塊序號(hào)isGuesttinyint3游客權(quán)限判斷會(huì)員表(Member):該表包含用戶ID,用戶組ID,用戶名,真實(shí)用戶名,電子郵件,簽名,主頁(yè),QQ號(hào)碼,MSN號(hào)碼,注冊(cè)時(shí)間,發(fā)帖數(shù)量。如表5.2所示。表5.2Member表字段類型長(zhǎng)度描述IDint11用戶IDgroupIDtinyint3用戶組IDusernamevarchar50用戶名Real_namevarchar50真實(shí)用戶名Emailvarchar50電子郵件headingvarchar50簽名homePagevarchar50主頁(yè)Qqint10QQ號(hào)碼MSNvarchar50MSN帳號(hào)jointimedatetime注冊(cè)時(shí)間No_of_postsmallint6發(fā)帖數(shù)量signvarchar200備注主題表(Topic):該表包含主題帖ID,帖子標(biāo)題,作者,最后更新作者,最后更新時(shí)間,點(diǎn)擊量,回復(fù)量,置頂標(biāo)志,頭像標(biāo)志,好帖標(biāo)志,所在版塊號(hào)。如表5.3所示。表5.3Topic表字段類型長(zhǎng)度描述IDint11主題帖IDtitlevarchar100帖子標(biāo)題authorvarchar50作者Last_post_authorvarchar50最后更新用戶名Last_post_timedatetime最后更新時(shí)間No_of_hitsmallint6點(diǎn)擊量No_of_replymediumint6回復(fù)量lockedtinyintt置頂facevarchar50頭像topictinyint3主題goodtinyint3精華帖標(biāo)志Forum_idmediumint200所在版塊回帖表(Forums):該表包含回帖ID,主題帖ID,版塊描述,最后更新作者,最后更新時(shí)間,版塊序號(hào),游客權(quán)限。如表5.4所示表5.4Thread表字段類型長(zhǎng)度描述IDint11帖子IDtopicIDtinyint3主題帖IDfacevarchar50頭像titlevarchar50標(biāo)題authorvarchar50作者Post_timevarchar50回復(fù)時(shí)間subjectvarchar50回復(fù)主題系統(tǒng)詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)6系統(tǒng)詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)本校園論壇系統(tǒng)采用DW+PHP設(shè)計(jì)制作。6.1論壇首頁(yè)設(shè)計(jì)與實(shí)現(xiàn)論壇首頁(yè)用于讀取當(dāng)前論壇中forums表中的論壇版塊的相關(guān)數(shù)據(jù),將其顯示在頁(yè)面上,并為每一個(gè)版塊生成一個(gè)連接,用戶可以通過鏈接進(jìn)入當(dāng)前版塊,查看此版塊下面的主題貼,若當(dāng)前數(shù)據(jù)庫(kù)中不存在任何版塊頁(yè)面將會(huì)顯示論壇正在建設(shè)中。實(shí)現(xiàn)代碼如下。<bodystyle="background-image:url(4.jpg)"><?PHPrequire("conn.php");?><tablewidth="90%"align="center"cellpadding="5"cellspacing="1"style="border-collapse:collapse;"><tr><tdheight="169"colspan="3"style="background-image:url(banner.jpg)"> </td></tr><tr><tdcolspan="3"style="background-color:#33CCFF">論壇列表<divalign="right"><?PHPsession_start();if(!isset($_SESSION["username"])||!isset($_SESSION["islogined"])){echo"<ahref=\"login.php\">登陸</a><ahref=\"register.php\">注冊(cè)</a>";}else{echo$_SESSION["username"].",<ahref=\"control.php\">我的資料</a><ahref=\"loginout.php\">注銷</a>";if($_SESSION["groupID"]=="2")echo"<ahref=\"admin/admin.php\">論壇管理</a>";}?></div></td></tr><tr><tdwidth="6%"style="border:1pxsolidblue"><strong>狀態(tài)</strong></td><tdwidth="70%"style="border:1pxsolidblue"><strong>論壇</strong></td><tdwidth="24%"style="border:1pxsolidblue"><strong>最后更新</strong></td></tr><?PHP$sql="select*fromforums";$result=mysql_query($sql);$num=mysql_num_rows($result);if($num>0){while($row=mysql_fetch_array($result)){?><tr><tdstyle="border:1pxsolidblue"><imgsrc="face/1311576941559.gif"></img></td><tdstyle="border:1pxsolidblue"><?PHPecho"<divclass=\"bold\"><aclass=\"forum\"href=\"forums.php?intpage=1&F=".$row["ID"]."\">".$row["forum_name"]."</a></div>".$row["forum_description"]?></td><tdstyle="border:1pxsolidblue"><div><?PHPecho$row["last_post_time"]."By".$row["last_post_author"]?></div></td></tr><?PHP}}else{echo"<tr><tdcolspan=3>對(duì)不起,論壇尚在建設(shè)中……</td></tr>";}close_db();?></table></body>6.2版塊內(nèi)主題帖標(biāo)題顯示頁(yè)面設(shè)計(jì)實(shí)現(xiàn)主題帖顯示頁(yè)面用于顯示當(dāng)前所在版塊中所有的主題帖子,考慮到了板塊下會(huì)存在很多的主題帖子,本頁(yè)面使用了數(shù)據(jù)分頁(yè)功能,每頁(yè)顯示20條數(shù)據(jù),定義每頁(yè)顯示內(nèi)容多少的變量存儲(chǔ)在global.php文件中,通過修改其中的list_rows可以控制每頁(yè)現(xiàn)實(shí)主題帖的數(shù)量,分頁(yè)主要通過數(shù)據(jù)查詢是的顯示結(jié)果限制,并在頁(yè)面的右下方生成分頁(yè)跳轉(zhuǎn)的鏈接。實(shí)現(xiàn)代碼如下。<bodystyle="background-image:url(4.jpg)"><?PHPrequire_once("conn.php");require_once("global.php");FunctionShow_pages($number,$F,$intpage,$list_rows){$pageno=ceil($number/$list_rows);echo"\n<tablewidth=90%border=0align=centercellpadding=0cellspacing=0class=mrg-top>";echo"<tr>\n<tdalign=right>\n<tableborder=0cellpadding=0cellspacing=0>\n<tr>";echo"<tdid=pagetop>第".$intpage."頁(yè)/共".$pageno."頁(yè)</td>";if($pageno>1)echo"\n<td><divclass=pagefirst><ahref=?intpage=1&F=".$F.$IsT."><<</a></div></td>";if($intpage>1)echo"\n<td><divclass=pagefirst><ahref=?intpage=".($int1)."&F=".$F.$IsT."><</a></div></td>";if($pageno>10){$a=Floor($pageno/10);$b=Floor($intpage/10);$c=$b*10+1;$d=$b*10+10;$e=$intpage%10;$g=($b-1)*10+1;if($intpage>10){if($b<$a){for($i=$c;$i<=$d;$i++)echo"\n<td><divclass=pagefirst><ahref=?intpage=".$i."&F=".$F.">".$i."</a></div></td>";}elseif($e==0){for($i=$g;$i<=$intpage;$i++)echo"\n<td><divclass=pagefirst><ahref=?intpage=".$i."&F=".$F.">".$i."</a></div></td>";}else{for($i=$c;$i<=$pageno;$i++)echo"\n<td><divclass=pagefirst><ahref=?intpage=".$i."&F=".$F.">".$i."</a></div></td>";}}else{for($i=1;$i<=10;$i++)echo"\n<td><divclass=pagefirst><ahref=?intpage=".$i."&F=".$F.">".$i."</a></div></td>";}}else{for($i=1;$i<=$pageno;$i++)echo"\n<td><divclass=pagefirst><ahref=?intpage=".$i."&F=".$F.">".$i."</a></div></td>";}if($pageno>$intpage)echo"\n<td><divclass=pagefirst><ahref=?intpage=".($intpage+1)."&F=".$F.">></a></div></td>";if($pageno>1)echo"\n<td><divclass=pagefirst><ahref=?intpage=".$pageno."&F=".$F.">>></a></div></td>";echo"</td>\n</tr>";echo"\n</table></td></tr></table>";}$F=$_GET["F"];$sql="selectforum_namefromforumswhereID='$F'";$result=mysql_query($sql);$rs=mysql_fetch_array($result);$forum_name=$rs["forum_name"];echo"當(dāng)前論壇為:<ahref=\"index.php\">$gb_name</a>-->>$forum_name";?><center><tablewidth="90%"style="border-collapse:collapse;"><tr><tdheight="171"colspan="5"valign="bottom"style="background-image:url(banner.jpg);border:1pxsolidblue"></td></tr><tr><tdcolspan="5"style="background-color:#33CCFF;border:1pxsolidblue"><divalign="right"><?PHPsession_start();if(!isset($_SESSION["username"])||!isset($_SESSION["islogined"])){echo"<ahref=\"login.php\">登陸</a><ahref=\"register.php\">注冊(cè)</a>";、}else{echo$_SESSION["username"].",<ahref=\"control.php\">我的資料</a><ahref=\"loginout.php\">注銷</a>";if($_SESSION["groupID"]=="2")echo"<ahref=\"admin_forums.php\">論壇管理</a>";}?> </p></div></div></td></tr><tr><tdwidth="10%"style="border:1pxsolidblue">狀態(tài)</td><tdwidth="30%"style="border:1pxsolidblue">帖子標(biāo)題</td><tdwidth="20%"style="border:1pxsolidblue">作者</td><tdwidth="20%"style="border:1pxsolidblue">瀏覽/回復(fù)</td><tdwidth="20%"style="border:1pxsolidblue">最后編輯</td></tr><?PHP$result=mysql_query("selectcount(ID)fromtopicwhereforum_id='$F'");$num=mysql_result($result,0);$intpage=$_GET["intpage"];if($intpage){$intpage=1;$start_num=($int1)*$list_rows;$sql="selectID,title,author,last_post_authorasla,last_post_timeaslt,no_of_hit,no_of_reply,locked,face,topic,goodfromtopicwhereforum_id='$F'orderbytopicdesc,last_post_timedesclimit$start_num,$list_rows";$result1=mysql_query($sql);while($row=mysql_fetch_array($result1)){$FID=$row["ID"];$author=$row["author"];$title=$row["title"];$no_of_reply=$row["no_of_reply"];$no_of_hit=$row["no_of_hit"];$lt=$row["lt"];$la=$row["la"];$topic=$row["topic"];$good=$row["good"];$locked=$row["locked"];?><tr><tdstyle="border:1pxsolidblue"><imgsrc="face/1311576953441.gif"></img></td><tdstyle="border:1pxsolidblue"><?PHPecho"<divclass=\"bold\"><aclass=\"forum\"href=\"thread.php?page=1&T=".$FID."&F=".$F."\">".$title."</a></div>"?></td><tdstyle="border:1pxsolidblue"><?PHPecho$author?></td><tdstyle="border:1pxsolidblue"><?PHPecho$no_of_reply."/".$no_of_hit?></td><tdstyle="border:1pxsolidblue"><divclass="lastupdate"><?PHPecho$lt."By".$la?></div></td></tr><?PHP}Show_pages($num,$F,$intpage,$list_rows);}else{echo"本版塊沒有帖子";}?></table></center></body>6.3用戶登陸頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)用戶登陸頁(yè)面用于實(shí)現(xiàn)用戶登陸的功能,在有權(quán)限限制的版塊中,只有登陸用戶,才可以在論壇中發(fā)帖。用戶登錄時(shí)需要通過表單傳送值到數(shù)據(jù)庫(kù)中進(jìn)行驗(yàn)證,如果驗(yàn)證通過,則顯示用戶登陸成功,并且通過session保存當(dāng)前用戶的登陸狀態(tài)。實(shí)現(xiàn)的代碼如下。<formname="form"action="loginuser.php"method="post"><center><table><tr><td>username</td><td><inputname="username"type="text"id="username"/></td></tr><tr><td>password</td><td><inputname="password"type="text"id="password"/></td></tr><tr><tdcolspan="2"><inputname="Submit"type="submit"class="btn"value="login"/><inputname="Submit2"type="reset"class="btn"value="reset"/></td></tr></table></center><?PHPsession_start();require_once("conn.php");$username=$_POST["username"];$password=$_POST["password"];$sql="select*frommemberwhereusername='$username'";$result=mysql_query($sql);$num=mysql_num_rows($result);if($num){$rs=mysql_fetch_array($result);if($rs["password"]!=md5($password)){echo"<script>alert('密碼不正確,請(qǐng)返回檢查!');location.href='login.php';</script>";}else{$_SESSION["username"]=$username;$_SESSION["groupID"]=$rs["groupID"];$_SESSION["islogined"]="OK";echo"<script>alert('登陸成功!');location.href='index.php';</script>";}}else{echo"<script>alert('沒有這個(gè)用戶,請(qǐng)返回檢查!');location.href='login.php';</script>";}?>6.4版塊添加頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)版塊添加頁(yè)面主要實(shí)現(xiàn)的功能是接受表單所傳送過來(lái)的值,表單的值通過POST方式傳送,本頁(yè)面主要將接受到的值提交到數(shù)據(jù)庫(kù)中保存。需要接受并保存到數(shù)據(jù)庫(kù)的值有forums_name(版塊名),forum_description(版塊描述),forums_order,isguest。主要實(shí)現(xiàn)代碼如下。<?PHPrequire_once("conn.php");$forum_name=$_POST["forum_name"];$forum_description=$_POST["forum_description"];$forum_order=$_POST["forum_order"];$isguest=$_POST["isguest"];$isguest=isset($isguest)?1:0;$sql="insertintoforums(forum_name,forum_description,forum_order,isguest)values('$forum_name','$forum_description','$forum_order','$isguest')";mysql_query($sql);header("location:index.php");?>6.5新帖保存頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)新帖保存頁(yè)面負(fù)責(zé)接收創(chuàng)建新帖頁(yè)面表單中通過POST方式傳來(lái)的相關(guān)值,包括帖子的標(biāo)題,內(nèi)容等,作者信息首先通過SESSION檢查是否有用戶登陸,若沒有,返回登陸界面,若有,則將所有信息包括標(biāo)題,內(nèi)容,作者,時(shí)間等信息插入Thread表中。主要實(shí)現(xiàn)代碼如下。<body><?PHPsession_start();require_once("global.php");require_once("conn.php");$F=$_POST["F"];$title=$_POST["title"];$content=$_POST["content"];$author=$_SESSION["username"];$result=mysql_fetch_array(mysql_query("selectisguestfromforumswhereID='$F'"));$isguest=$result["isguest"];if($isguest==0){if(empty($_SESSION["username"])||empty($_SESSION["islogined"])){echo"<script>alert('您尚未登陸,請(qǐng)先登陸!');location='login.php';</script>";exit();}}$sql="insertintotopic(title,author,last_post_author,last_post_time,no_of_hit,no_of_reply,locked,topic,good,forum_id)values('$title','$author','$author',now(),0,0,0,0,0,'$F')";mysql_query($sql);$topicID=mysql_insert_id();$sql="insertintothread(topicID,title,author,post_time,subject)values('$topicID','$title','$author',now(),'$content')";mysql_query($sql);if($author!="Guest"){$sql="updatemembersetno_of_post=no_of_post+1whereusername='$author'";mysql_query($sql);}?><script>window.history.back(-2)</script></body>6.6帖子編輯頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)帖子編輯頁(yè)面主要使用GET獲得通過相關(guān)帖子頁(yè)面URL傳來(lái)的帖子ID值,檢查session中存儲(chǔ)的用戶名,只有發(fā)帖的用戶和管理員才可以編輯自己發(fā)的帖子,若session是空的,則提示需要登陸或者權(quán)限不夠,并通過ID值在數(shù)據(jù)庫(kù)中獲取帖子的相關(guān)信息現(xiàn)實(shí)在表單中相關(guān)的文本框,文本域中。主要實(shí)現(xiàn)代碼如下。<bodystyle="background-image:url(4.jpg)"><?PHPrequire_once"global.php";require_once"conn.php";session_start();$F=$_GET["F"];$T=$_GET["T"];$ID=$_GET["ID"];if(empty($F)||empty($T)||empty($ID))echo"<script>history.back;</script>";$sql="selectA.author,A.title,A.face,A.subject,B.titleastopictitlefromthreadA,topicBwhereA.ID='$ID'andA.topicID=B.ID";$rs=mysql_fetch_array(mysql_query($sql));$rename=$rs["author"];$title=$rs["title"];$face=$rs["face"];$topictitle=$rs["topictitle"];$resubject=$rs["subject"];if($_SESSION["groupID"]!="2"){if(($_SESSION["username"]!=$rename)||empty($_SESSION["islogined"]))echo"<script>history.go(-1);</script>";}$sresult=mysql_fetch_array(mysql_query("selectforum_name,isguestfromforumswhereID='$F'"));$forum_name=$sresult["forum_name"];?><center><formid="form1"name="form1"method="post"action="save.php"><tablewidth="90%"border="1"style="border-collapse:collapse;"><tr><tdheight="171"colspan="2"style="background-image:url(banner.jpg);border:1pxsolidblue"> </td></tr><tr><tdcolspan="2"style="border:1pxsolidblue"><strong>編輯帖子</strong></td></tr><tr><tdwidth="23%"style="border:1pxsolidblue">用戶</td><tdwidth="77%"style="border:1pxsolidblue"><?PHPif($_SESSION["username"]!=NULL){echo$_SESSION["username"];}else{echo"游客";}?></td></tr><tr><tdstyle="border:1pxsolidblue">標(biāo)題</td><tdstyle="border:1pxsolidblue"><label><inputname="title"type="text"value="<?PHPecho$title;?>"size="118"/></label></td></tr><tr><tdstyle="border:1pxsolidblue">內(nèi)容</td><tdstyle="border:1pxsolidblue"><label><textareaname="subject"cols="100"rows="5"><?PHPecho$resubject;?></textarea></label></td></tr><tr><tdstyle="border:1pxsolidblue"><inputtype="hidden"value="<?PHP$F=$_GET["F"];echo$F?>"name="F"/><inputtype="hidden"value="<?PHP$ID=$_GET["ID"];echo$ID?>"name="ID"/><inputtype="hidden"value="<?PHP$T=$_GET["T"];echo$T?>"name="T"/> </td><tdstyle="border:1pxsolidblue"><label><inputtype="submit"name="Submit"value="提交"/></label><label><inputtype="submit"name="Submit2"value="提交"/></label></td></tr></table></form></center></body></html>系統(tǒng)測(cè)試7系統(tǒng)測(cè)試設(shè)計(jì)完成后,將包含所有頁(yè)面的bbs文件夾放到XAMPP\hotdocs目錄下面,打開APACHE和MySQL服務(wù),在瀏覽器中輸入http:\\localhost\bbs\index.php,論壇首頁(yè)成功打開,顯示正常,經(jīng)過測(cè)試設(shè)計(jì)到論壇功能基本可以正常使用。經(jīng)過測(cè)試,該設(shè)計(jì)基本符合本次畢業(yè)設(shè)計(jì)的要求。8結(jié)束語(yǔ)本設(shè)計(jì)選擇WAMP架構(gòu),實(shí)現(xiàn)了較為完善的論壇功能,本文論壇系統(tǒng)由兩個(gè)部分組成:面向論壇管理者的論壇管理系統(tǒng)和面向一般用戶的論壇服務(wù)系統(tǒng),本系統(tǒng)界面比較美觀,達(dá)到一般可用的要求。根據(jù)課題任務(wù)的要求,通過對(duì)本論壇系統(tǒng)的開發(fā),更加深入了解網(wǎng)絡(luò)技術(shù)和數(shù)據(jù)庫(kù)基本只是,熟練了開發(fā)工具和相關(guān)軟件的應(yīng)用,熟悉了網(wǎng)站的建站過程和網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的編程方法。本論壇系統(tǒng),是作為校園論壇系統(tǒng)的用途來(lái)設(shè)計(jì)和實(shí)現(xiàn)的,用戶可以通過管理員權(quán)限進(jìn)行添加版塊,目前Internet上的論壇技術(shù)正在不斷的發(fā)展和完善,但本文的論壇系統(tǒng)還存在這下子額的局限性:本文使用了MySQL數(shù)據(jù)庫(kù),與其他的大型數(shù)據(jù)庫(kù)如ORACLE、DB2、SQLSERVER等數(shù)據(jù)庫(kù)相比,有他的不足之處,比如規(guī)模小,功能有限;本文系統(tǒng)以后的開發(fā)過程中,可以在論壇中添加多媒體信息,甚至可以通過提供免費(fèi)的空間的服務(wù)來(lái)控制論壇的發(fā)帖量。致謝致謝歷時(shí)將近兩個(gè)月的時(shí)間終于將這篇論文寫完,在論文的寫作過程中遇到了無(wú)數(shù)的困難和障礙,都在同學(xué)和老師的幫助下度過了。尤其要強(qiáng)烈感謝我的論文指導(dǎo)老師—?jiǎng)⑻怖蠋煟麑?duì)我進(jìn)行了無(wú)私的指導(dǎo)和幫助,不厭其煩的幫助進(jìn)行論文的修改和改進(jìn)。另外,在校圖書館查找資料的時(shí)候,圖書館的老師也給我提供了很多方面的支持與幫助。在此向幫助和指導(dǎo)過我的老師表示最衷心的感謝!設(shè)計(jì)開始的時(shí)候,對(duì)于PHP程序設(shè)計(jì)方面還有許多的地方,導(dǎo)致在整個(gè)設(shè)計(jì)過程中走了許過彎路,也出現(xiàn)了不少的錯(cuò)誤,但是正是這一次次的嘗試改正錯(cuò)誤的過程,也磨練了自己的耐性,增強(qiáng)了對(duì)PHP語(yǔ)言和MySQL數(shù)據(jù)庫(kù)的熟悉程度,在這次畢業(yè)設(shè)計(jì)中,我不僅僅收獲了專業(yè)知識(shí),更是收獲了在編程方面的寶貴經(jīng)驗(yàn)。畢業(yè)設(shè)計(jì)忙了近兩個(gè)月的時(shí)間,深深的體會(huì)到了這是一座連接工作和學(xué)習(xí)的橋梁,畢業(yè)設(shè)計(jì)的完成同時(shí)標(biāo)志這大學(xué)生活的結(jié)束,今后迎接我的是更多更大的挑戰(zhàn),但是通過了畢業(yè)設(shè)計(jì)的磨練,我相信在以后的生活中能夠更好的面對(duì)這些,把握機(jī)遇,在大學(xué)里得到了更好的鍛煉,我們要將學(xué)到的知識(shí)轉(zhuǎn)換成力量,為了自己的夢(mèng)想而努力。參考文獻(xiàn)[1]劉太安.?dāng)?shù)據(jù)庫(kù)技術(shù)及應(yīng)用[M].東營(yíng):中國(guó)石油大學(xué)出版社,2009.5[2]陶宏才.?dāng)?shù)據(jù)庫(kù)原理及設(shè)計(jì)[M].北京:清華大學(xué)出版社,2005.4[3]威利.PHP和MYSQLWEB開發(fā)[M].北京:機(jī)械工業(yè)出版社,2009.4[4]米切爾.PHP精粹:編寫高效PHP代碼[M].北京:機(jī)械工業(yè)出版
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 修橋合同范本
- 2025年安徽道路運(yùn)輸從業(yè)資格證考試內(nèi)容是什么
- 包工料水電裝修合同范本
- 公司退休返聘合同范例
- 醫(yī)院人事勞務(wù)合同范本
- 全套合同范本目錄
- 傭金合同范本道客
- 全職抖音主播合同范本
- 農(nóng)村改水電合同范本
- 出租生態(tài)大棚合同范本
- 精神科護(hù)士進(jìn)修
- 《用戶側(cè)電化學(xué)儲(chǔ)能系統(tǒng)接入配電網(wǎng)技術(shù)規(guī)定》
- 2024年洛陽(yáng)市九年級(jí)語(yǔ)文中考第一次模擬考試卷附答案解析
- 安徽省醫(yī)療保障基金使用違法違規(guī)問題檢查指引2023版
- 脾淋巴瘤護(hù)理查房
- (幻燈片)湘教版七年級(jí)下冊(cè)地理復(fù)習(xí)課件
- 食堂油鍋起火演練方案及流程
- 2024年江西電力職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)及答案解析
- 醫(yī)療器械銷售渠道管理
- 幼兒園中班跳繩實(shí)施方案及措施
- 2024年中考政治總復(fù)習(xí)初中道德與法治知識(shí)點(diǎn)總結(jié)(重點(diǎn)標(biāo)記版)
評(píng)論
0/150
提交評(píng)論