【文章內容簡介】
truncate|char|declare)=false then scriptalert(39。密碼中含有非法字符 ,請重新輸入 39。)。()。/script () end if39。上面是判斷輸入的是否有非法字符 。 Function CheckSqlIn(Str,Length,NotStr)39。函數 。 if Str= then39。如果輸入的為空則 false。 CheckSqlIn=false exit function end if if len(Str)Length then39。判斷輸入的長度 。 CheckSqlIn=false exit function end if Dim NotStrArr39。定義變量 。 Dim I39。定義變量 。 NotStrArr=Split(NotStr,|)39。拆分為數組 。 for I=LBound(NotStrArr) to UBound(NotStrArr)39。for 循環(huán) 。 if Instr(Str,NotStrArr(I))0 then39。判斷 。 CheckSqlIn=false exit function end if Next 基于 BS 結構的房屋租售管理系統(tǒng)的實現(xiàn) 14 CheckSqlIn=true End Function 39。結束函數 。 管理員登 錄 代碼與用戶登陸很相似,這里就不再列舉例。 房屋 出租出售發(fā)布模塊 房屋的出租出售信息的發(fā)布界面很相似,以出租為例如圖 42: 圖 42 房屋出租信息發(fā)布 房屋出租出售信息的發(fā)布模塊,其實就是一個簡單的數據庫的插入。出租發(fā)布和出售發(fā)布大同小異,這里就主要列出租信息的發(fā)布的核心代碼 如下: %set rs=(select biaoti from chuzu where biaoti=39。amp。biaotiamp。39。)‘ 檢查標題是否存在 if not then ‘ 如果存在 % script Language=VbScript MsgBox 該標題已存在,請換個標題 = /script %end if % % if biaoti=or dizhi=or mianji=or gongjiaoluxian=or lianxidianhua= then % script Language=VbScript 上海理工大學成人高等學歷教育畢業(yè)設計(論文) 15 MsgBox 地址,面積,公交路線,聯(lián)系電話不能為空哦 = /script % elseif then (insert chuzu (biaoti,man,區(qū)域 ,地址 ,室 ,廳 ,衛(wèi) ,面積 ,樓層 ,朝向 ,人流量 ,用途 ,環(huán)境 ,裝修程度 ,基礎設施 ,室內設施 ,起租條件 ,租金 ,押金 ,公交路線 ,聯(lián)系電話 ,備注 ,t,yxt) values( 39。amp。biaotiamp。39。,39。amp。zhanghaoamp。39。,39。amp。quyuamp。39。,39。amp。dizhiamp。39。,39。amp。shiamp。39。,39。amp。tingamp。39。,39。amp。weiamp。39。,39。amp。mianjiamp。39。,39。amp。loucengamp。39。,39。amp。chaoxiangamp。39。,39。amp。renliuliangamp。39。,39。amp。yongtuamp。39。,39。amp。huanjingamp。39。,39。amp。zhuangxiuchengduamp。39。,39。amp。jichusheshiamp。39。,39。amp。shineisheshiamp。39。,39。amp。tiaojianamp。39。,39。amp。zujinamp。39。,39。amp。yajinamp。39。,39。amp。gongjiaoluxianamp。39。,39。amp。lianxidianhuaamp。39。,39。amp。beizhuamp。39。,39。amp。tamp。39。,39。amp。yxtamp。39。)) 39。執(zhí)行的主要是一個插入信息的一個操作 % script Language=VbScript MsgBox 發(fā)布成功 = /script %end if% % set con=nothing set rs=nothing % 房屋信息修改模塊 發(fā)布的房屋信息的修改,這個模塊 主要是一個更新 。它主要涉及到數據的讀出、和更新( update)的過程 , 界面如圖 43。 基于 BS 結構的房屋租售管理系統(tǒng)的實現(xiàn) 16 圖 43 房屋出租修改 需要顯示的就以 %= rs(biaoti)%這樣的方式顯示出來。上面主要說了數據的讀出來并且修改,這里還涉及到一個后臺,就是一個更新的過程。代碼如下: (update chuzu set biaoti=39。amp。biaotiamp。39。,區(qū)域 =39。amp。quyuamp。39。,地址 =39。amp。dizhiamp。39。, 室 =39。amp。shiamp。39。, 廳 =39。amp。tingamp。39。, 衛(wèi) =39。amp。weiamp。39。, 面積=39。amp。mianjiamp。39。, 樓層 =39。amp。loucengamp。39。, 朝向 =39。amp。chaoxiangamp。39。, 人流量=39。amp。renliuliangamp。39。,用途 =39。amp。yongtuamp。39。,環(huán)境 =39。amp。huanjingamp。39。,裝修程度=39。amp。zhuangxiuchengduamp。39。, 基礎設施 =39。amp。jichusheshiamp。39。, 室內設施=39。amp。shineisheshiamp。39。,起租條件 =39。amp。tiaojianamp。39。,租金 =39。amp。zujinamp。39。,押金=39。amp。yajinamp。39。, 公 交 路 線 =39。amp。gongjiaoluxianamp。39。, 聯(lián)系電話=39。amp。lianxidianhuaamp。39。,備注 =39。amp。beizhuamp。39。,t=39。amp。tamp。39。,yxt=39。amp。yxtamp。39。 from chuzu where id=39。amp。idamp。39。 ) 消息發(fā)送及回復模塊 這個模塊涉及到 4 張表,即注冊用戶給管理員留言、管理員給注冊用戶留言、普通用戶給注冊用戶發(fā)送租房信息表和買房信息表。 用戶點擊留言,彈出對話窗口,其他留言也是采用這樣的風格,即彈出窗口, 如圖 44。 上海理工大學成人高等學歷教育畢業(yè)設計(論文) 17 圖 44 給房東留言 代碼如下: a href=onClick=(39。?NO=%=rs(id)%amp。name=%=rs(biaoti)%amp。man=%=rs(man)%39。,39。39。,39。WIDTH=400,height=180 scrollbars=no top=400 left=20039。) 給房東留言 /a 其中普通用戶聯(lián)系房東,涉及到一個超連接傳參的問題。主要是傳遞一個房屋的編號和發(fā)布房屋的房東。當房東查看留言的時候是根據 select * from chushoumsg where man=39。amp。zhanghaoamp。39。 讀出關于房東的所有留言。管理員回復房東時候也主要是超連接傳參和一個隱藏域來進行傳遞管理員當 前回復的房東名字和回復的標題 管理員發(fā)布公告通知的時候,這里主要 代碼 是: msg=request(msg) biaoti=公告通知 t=date() man=管理員 (insert liuyan_user (biaoti,msg,t,man) values ( 39。amp。biaotiamp。39。,39。amp。msgamp。39。,39。amp。tamp。39。,39。amp。manamp。39。) )存 入 數據庫的通知的標題都是 “ 公告通知 ” 。 當注冊用戶查看留言主要是由以下代碼實現(xiàn): biaoti=公告通知 set rs2=(select * from liuyan_user where biaoti=39。amp。biaotiamp。39。) 房屋管理模塊 房屋管理模塊為注冊用戶管理發(fā)布房屋信息。主要是一個刪除操作,和一個判斷過期的問題。刪除操作就是一個超連接傳遞一個房屋的編號,再根據房基于 BS 結構的房屋租售管理系統(tǒng)的實現(xiàn) 18 屋的編號來刪除對應信息,這里就不在羅嗦了。 詳細如圖 45。 圖 45 房屋過期清理 判斷過期主要是根據 有效時間 =有效天數 (當前系統(tǒng)時間 發(fā)布時間) 。 代碼如下: %nn=rs(t) % %=rs(yxt)DATEDIFF(d,nn,DATE) % 房屋查詢模塊 查詢分為出租查詢和 出售查詢。下面以出租查詢?yōu)槔鲎獠樵冇址譃?地點 查詢和條件查詢 , 界面如下圖 46。 圖 46 房屋出租查詢 地點 查詢主要根據地址和房屋用途來查詢,相關代碼如下: select * from chuzu where 區(qū)域 like 39。%amp。quyuamp。%39。 and 用途 like 39。%amp。yongtuamp。%39。 條件查詢代碼如下: set rs=(select * from chuzu where ( 區(qū)域 like 39。%amp。quyuamp。%39。 and 用途 like 39。%amp。yongtuamp。%39。and 室 like 39。%amp。shiamp。%39。 and 廳 like 39。%amp。tingamp。%39。 and 衛(wèi) like 39。%amp。weiamp。%39。 and 裝修程度 like 39。%amp。zhuangxiuchengduamp。%39。 and 基礎設施 like 39。%amp。jichusheshiamp。%39。 and 室內設施 like 39。%amp。shineisheshiamp。%39。 and 樓層 like 39。%amp。loucengamp。%39。 and 面上海理工大學成人高等學歷教育畢業(yè)設計(論文) 19 積 between amp。mianji1amp。 and amp。mianji2amp。 and 租金 between amp。money1amp。 and amp。money2amp。 ) ) if then scriptalert(39。沒有你所查詢的房屋39。)。()。/script end if 其中用了一個 between 來選擇合適的面積和租金 的范圍 。 管理員房屋、帳號管理模塊 管理員房屋管理,主要是清理過期的房 屋信息和根據帳號來刪除發(fā)布信息。主要界面如圖 47。 圖 47 帳號管理 根據判斷過期來刪除,也主要是首先判斷是否過期,在讀出房屋的編號,根據編號進行刪除。根據帳號來刪除所發(fā)布的信息。管理員點管理帳號就能看到相應的房東帳號。這里點刪除可以刪除帳號,主要是一個超連接傳遞該帳號,根據該帳號進行刪除。點該帳號就可以看到該用戶所發(fā)布的出租出售房屋的信息,點刪除可以刪除相應的房屋信息 , 如 圖 48。 圖 48 根據帳號刪除房屋信息 代碼如下: % id=(NO) (delete from chuzu where id=39。amp。idamp。39。) % 就是根據超連接傳參,用 id=(NO)獲取該值進基于 BS 結構的房屋租售管理系統(tǒng)的實現(xiàn) 20 行操作。 遇到的問題及解決辦法 ① 重復提交數據問題 比如在注冊的時候,用戶只要在成功的頁面不停的刷新,數據也在不停的提交。這個問題最后主要采用了檢測帳號是否存在,如存在了就提交不成功。如: set rs = ( select zhanghao from yonghu where zhanghao=39。amp。zhanghaoaamp。39。) if not then % script Language=VbScript MsgBox 該用戶已存在 = /script ② 權限問題。 %zhanghao=session(zhanghao) if zhanghao=empty then (../) end if % 如果沒有這段權限代碼的驗證 ,用戶只要知道頁面地址就可以直接跳轉過去,從而就不能保證合法用戶的安全性 , 和本系統(tǒng)的安全。 ③ 安全退出問題。 % session(adzh)=empty (../) % 上海理工大學成人高等學歷教育畢業(yè)設計(論文) 21 5 系統(tǒng)的測試 測試項目 ① 注冊用戶功能:登陸驗證,聯(lián)系管理員,房屋的出租出售信息發(fā)布、修改、刪除,查看、刪除留言,修改密碼。 ② 管理員功能:登陸驗證,帳號管理,通過帳號刪除該帳號發(fā)布的房屋信息,清理過期房屋信息,發(fā)布、刪除公告,發(fā)布、