《2yup漂流祈愿瓶大家一齐做》(三)
'*************************************************************** (接上讲 七 的第一后面) ---------------------------------------------------------------- 以下内容是:1、设定区。2、参数处理。3、通用函数。 请将他们分别放到第一讲(四)“站点的页面设计”指定的位置,真实放置 版面是在第二讲的(七)“站点网页制作”的步骤1内的顶上和下角。 ------------------------------------------------------------------
二、(步骤3)依照(一)和构架建立设定区。
构建设置区主要是根据(一)功能和要求的第14点要求,现在将他们完成如下: <% '************************** '***** 设定区部分 ***** '**************************
'================= 基本设定 =============== max = 7 '每页显示数 ListNum = 16 '边上列表数目 rate = 2 '管理或搜索时瓶子流速 User = "8chinaasp" '管理用户名 PassWord = "8chinaasp" '管理密码 PageTitle= "2YUP漂流祈愿瓶" '网页名称 homepage = "2yup.com" '主页网址,不用加http:// MyWeb = "ASP中文网" '主页名称 imgType = ".gif" '不用改 picPath = "pic/" '图片档案夹路径 path = "Pic/wishBoard.mdb" '数据库路径(为安全请更改) '================= 连接设定 =============== '左边链接'[注意:“||”是分割符],这是产生自定义链接的设定 '引用通用函数中的 MyLinks(LinkArr)就可以产生。 '说明:排序应该是 [链接名称]||[链接说明]||[链接网址]中间使用分割符“||”
L1 = "主页||ASP中文网||http://"&homepage&"" L2 = "文档||文档中心||http://www.2yup.com/asp/article/" L3 = "论坛||ASP论坛||http://www.2yup.com/asp/" %>
<% '**************************** '***** 参数处理部分 ***** '**************************** ''================参数处理================ '获取数值 keyword = Trim(Request("k")) howfind = Trim(Request("h")) Cpage = Trim(Request("Page")) Action = Trim(request("Action")) id = Trim(request("id")) UserName = Session("User") '管理或退出 If Action = "exit" Then Call logout() End if '连结数据库 Call opendb(conn,path) '处理登入和删除 Select Case Action '登入 Case "login2" Call login2 '删除 Case "del" Call delWish() '消掉id才不会为显示已删瓶子而出错 id = "" End Select
'==== 处理数据库 ==== '求取搜索数据 if keyword <> "" then findData = " and "&howfind&" like '%"&checkStr(keyword)&"%'" end if '求取单个祈愿数据 if id <> "" then findData = findData & " and id = "&id&"" end if '设定读写模式 LockType = 1 if inStr(Action,"Save") or inStr(Action,"detail") then LockType = 3 end if '进行数据库查寻 sql="select * from wish where Pass = True "&findData&" order by date desc" Call changetable (conn,sql,rs,LockType) '瓶子总数 num = rs.recordcount
'==== 无数据处理 ==== IF rs.EOF THEN '设定没有数据时的提示内容 if id = "" and keyword = "" then Msgs = "<b>恭 喜 您 将 成 为 第 一 个 许 愿 人 !</b>" else Msgs = "<b>没 有 您 要 找 的 许 愿 瓶 !</b>" end if END IF %>
三、(步骤4)依照(四)和构架编写通用函数。 其实这个步骤和下一个步骤5--“编写各部位程式”,是不能截然分开的, 明显的通用函数可以直接使用和在这步中动手编写,但是有的则需要到下 一步的时候结合副程式的编写才能正确的写出来。现在我将我们这个祈愿 瓶程序里使用到的通用函数都写在下面,如果有错误的,或是不清楚的可 以提出来。 <% '********************************** '***** 通用数据库函数部分 ***** '**********************************
'******************************************************************* '打开数据库 sub opendb(connect,path) set connect=server.CreateObject("adodb.connection") connect.open "provider=microsoft.jet.oledb.4.0; " _ &"data source="&server.MapPath(path) end sub
'******************************************************************* '查询或更改数据库 function changetable(conn,sql,rs,LockType) set rs=server.createobject("ADODB.recordset") rs.open sql,conn,1,LockType end function
'******************************************************************* '关闭数据库 sub closedb(connect) connect.close set connect=nothing end sub
'******************************************************************* '关闭临时表 sub closetable(rs) if Rs.state = 1 then Rs.Close Set Rs=Nothing end if end sub
'******************************************************************* '过滤非法字符 function checkStr(str) if isnull(str) then checkStr = "" exit function end if checkStr=replace(str,"'","''") end function
'******************************************************************* '生日换算成年龄 function MyAge(Birthday) MyAge = DateDiff("yyyy",Birthday,Date) end function
'******************************************************************* '年龄换算成生日 function Mybday(Age) Mybday = DateAdd("yyyy",-Age,Date) end function
'******************************************************************* '产生连接 Sub MyLinks(LinkArr) MakeLink = Split(LinkArr,"||") MyLink = "<A HREF='"&MakeLink(2)&"' TITLE='"&MakeLink(1)&"'>"&MakeLink(0)&"</A>" Response.Write MyLink End Sub
'******************************************************************* '错误提示 Sub prompt(LoginMsg,ToUrl) Response.Write "<script language='JavaScript'>alert" _ &"('"&LoginMsg&"');"&ToUrl&"</script>" End Sub %>
|