【正文】
庫主要有三個表,用戶信息表、回復(fù)表和論壇主題表。下面就分別作以介紹。(user_info)該表中主要存放用戶的一些個人資料。該表的具體結(jié)構(gòu)如下:字段類型是否必須填寫id自動編號是name文本否password文本否passwordgo文本否sex數(shù)字否文本否homepage文本否icq文本否oicq文本否face文本否city文本否job文本否hobby文本否sign文本否Reg_time日期/時間是num數(shù)字否level文本是adminbid數(shù)字否boardid數(shù)字否bbsdf數(shù)字否lastlogin日期/時間是 用戶信息表該表中各字段的具體說明如下:id:用戶的序號,在生成時由系統(tǒng)自動填寫,用于表示文章在數(shù)據(jù)庫中的順序。name:用戶的名稱。 Password:用戶密碼。Passwordgo:用戶的驗證密碼。 Sex:用戶性別。Email:用戶郵件地址。 homepage:用戶的主頁。icq:用戶的ICQ。 Oicq:用戶的OICQ。Face:用戶的個性頭像。 City:用戶所在的城市。Job:用戶目前職業(yè)。 Hobby:用戶的興趣愛好。Sign:用戶的簽名。 Reg_time:用戶的注冊時間。Num:用戶發(fā)貼數(shù)。 Level:用戶的級別。Adminbid:如果是版主則是所在的版面。 Bbsdf:用戶論壇得分。Boardid:如果是版主則是他所在的版面。Lastlogin:用戶上一次訪問論壇的時間。(reply)該表示用來存放每篇原文收到的回復(fù)文章的,具體的表結(jié)構(gòu)如下:字段類型是否必須填寫id自動編號是username文本否replyid數(shù)字否bid數(shù)字否hits數(shù)字否faceimg文本否content備注否wdate日期/時間否system文本否ip文本否 回復(fù)表該表的各字段含義說明如下:id:回復(fù)Id號,用于給回復(fù)的文章編號。username:回復(fù)原文的用戶名示。 Replyid:回復(fù)的編號。Bid:版面編號。 Hits:點擊數(shù)量。faceimg:表情圖片。 content:回復(fù)內(nèi)容。wdate:發(fā)貼時間。 System:瀏覽器的類型。Ip:IP地址。(topic) 該表用來存放論壇中文章的類別,是由管理員規(guī)定并填寫的。具體的表結(jié)構(gòu)如下:字段類型是否必須填寫Id自動編號是title文本否hits數(shù)字否bid數(shù)字否faceimg文本否reply數(shù)字否content備注否wdate日期/時間否ldate日期/時間否username文本否lastusername文本否jh數(shù)字否ld數(shù)字否lock數(shù)字否 論壇類別庫該表中各字段的具體含義如下:id:發(fā)貼編號。 Title:帖子標題。Hits:查看帖子次數(shù)。 Bid:版面編號。Faceimg:表情圖標。 Reply:回復(fù)貼數(shù)。Content:貼子內(nèi)容。 Wdate:發(fā)貼的時間。Ldate:最后發(fā)貼的時間。 Username:發(fā)貼的用戶名。Lastusername:最后回復(fù)帖子的用戶名。Jh:精華貼。0為普通貼,1為精華貼。Ld:難貼。0為普通貼,1為難貼。Lock:鎖定貼。0為未鎖,1為鎖定。 網(wǎng)站管理員網(wǎng)站管理員主是用于管理員在線對公司動態(tài)新聞、員工投稿區(qū)的內(nèi)容的增加。該表的具體結(jié)構(gòu)如下表:字段名類型長度是否必須填寫name文本8是password文本15是 管理員登入表該表中各字段的具體含義如下:name:用戶名 Password:密碼第四章 代碼分析WEB設(shè)計的四個主要方面是:內(nèi)容、技術(shù)、外觀以及經(jīng)濟??紤]好首頁站點的意圖是非常重要的。在建設(shè)站點之前,應(yīng)該認真理解站點設(shè)計中會遇到的問題以及要極力達到的目標。清晰的理解和定義目標,有助于確定站點設(shè)計的合理性。首頁是客戶相互交流的頁面形象是非常重要的。在制作此頁面之前,應(yīng)該認真理解站點設(shè)計中會遇到的問題以及要達到所期待的效果。清晰的理解和定義目標,有助于確定站點設(shè)計的合理性。 用ASP編程的過程中,首要的思路就是建立與數(shù)據(jù)庫的連接,本主頁用編寫程序的方式寫成一個頭文件,只要在網(wǎng)站設(shè)計中需要連接數(shù)據(jù)庫時在調(diào)用該文件就行了。首先在管理員頁面中登入,輸入正確的用戶名和密碼,主要代碼如下:script language=JavaScript ! function check(){ if(==) { alert(請輸入姓名)。return false。 } if(==) { alert(請輸入密碼)。return false。 } return true。 } /script%if session(b)=1 then 你輸入的密碼或姓名不正確,請重新輸入!session(b)=0end if %輸入主題和內(nèi)容后,點擊提交。主要代碼如下:% Set conn = ()DBPath=(../db/) driver={Microsoft Access Driver (*.mdb)}。dbq=amp。DbPath sql=select * from newsset rs=() sql,conn,3,2rs(top)=trim((top))rs(neirong)=trim((neirong))rs(date)=date%通過這段代碼,相應(yīng)的內(nèi)容就會去現(xiàn)在首頁的公司動態(tài)新聞中。在公司動態(tài)新聞這一塊中,在頁面中調(diào)用(!include file=),:% Set conn = ()DBPath=(../db/) driver={Microsoft Access Driver (*.mdb)}。dbq=amp。DBPath %在news表中讀取數(shù)據(jù):% dim sql dim rs sql=select * from news Set rs= () sql,conn,1,3 if and then p align=39。center39。 還 沒 有 任 何 信 息 /p end if %通過newsid連接到主題相對應(yīng)的內(nèi)容:a href=?newsid=% = rs(newsid)% target=_blank % =rs(top)%/a font size=2 [/fontfont size=2 % =rs(date)%主要代碼分析:39。提取貼子總數(shù)和回復(fù)貼子總數(shù)%sqlstr=select * from topic sqlstr,conn,1,1topic_count=sqlstr=select * from reply sqlstr,conn,1,1reply_count=%顯示最后注冊的用戶的名稱、時間%set rs_name=()sql_name=select * from user_info order by id desc sql_name,conn,1,1regusercount= 39。注冊總?cè)藬?shù)if or bof then 沒有注冊用戶! else a href=?name= amp。 rs_name(name) amp。 amp。 rs_name(name) amp。 /a amp。 rs_name(reg_time)end if%以下是會員信息加入數(shù)據(jù)庫()的代碼:!include file=%name=request(UserName)/用戶名 =request(Email)39。郵件地址city=request(Location)39。所在地區(qū) job=request(Occupation)39。目前的職homepage=request(URL)39。個人主頁地址 hobby=request(Interests)39。個人興趣愛好icq=request(Icqnum)39。icq號 oicq=request(Oicqnum)39。oicq號sign=request(Signature)39。個人簽名檔 face=request(FaceIcons)39。圖標sex=request(Sex)39。 password1=request(password1)password2=request(password2)39。** 檢測兩者密碼是否相同的情況 ** if password1password2 then ?id=3 end if39。** 檢測用戶名是否也被注冊了 **set rs_name=()sql_name=select * from user_info where name=39。amp。nameamp。39。 sql_name,conn,1,3if 0 then ?id=2 39。用戶名已存在!!! end if(username)=name 39。把用戶名存入cookie39。存入用戶注冊信息set rs=() user_info,conn,2,3,2rs(name).value=name rs(password).value=password1 39。用戶密碼rs(passwordgo).value=password 39。驗證密碼 rs(sex).value=sexrs().value= rs(homepage).value=homepagers(icq).value=icq rs(oicq).value=oicqrs(face).value=face rs(city).value=cityrs(job).value=job rs(hobby).value=hobbyrs(sign).value=sign39。轉(zhuǎn)換簽名檔信息rs(reg_time).value=now() 39。注冊時間 rs(lastlogin).value=now()39。第一錄時間rs(level).value=/ 39。用戶級別39。把信息加入數(shù)據(jù)庫中set rs=nothing39。轉(zhuǎn)入注冊成功頁面set rs1=()sqlstr=select * from user_info where name=39。amp。nameamp。39。 sqlstr,conn,1,3id=rs1(id)、回復(fù)文章:當會員注冊成功后返回首頁輸入剛剛注冊的用戶名和密碼登陸論壇。當?shù)顷懗晒?,在論壇欄目中選擇你所喜歡的交流區(qū)。其界面顯示了以往會員在此討論區(qū)發(fā)表的文章,點擊其標題顯示其內(nèi)容。當會員點擊提交按鈕,頁面首面檢查用戶輸入的信息是否正確,只要輸入無誤。論壇中當發(fā)表的文章在一個頁面顯示不下時,為了更美觀頁面和把全部文章的標題從數(shù)據(jù)庫中調(diào)出來并點擊后顯示其詳細內(nèi)容。此論壇設(shè)計了分頁技術(shù)單頁面連接技術(shù),其ASP編程代碼如下:%const MaxPerPage=10 //定義每一頁顯示的條數(shù)dim i,j,k //定義循環(huán)變量const maxx=8 //定義顯示目數(shù) //* 以下是顯示的所有文章前10條 % sql=select * from pm order by id desc Set rs= () sql,conn,1,3 if and then p align=39。center39。 找不到任何任何信息! end if %%do while not %