📄 default.aspx
字号:
<%--导入名称空间--%>
<% @ Import Namespace="System.Data" %>
<% @ Import Namespace="System.Data.OleDb" %>
<% @ Import Namespace="System.Xml" %>
<% @ Import Namespace="System.IO" %>
<%server.scripttimeout=300 '设置页面脚本超时,请不要删除,防止程序产生错误引起服务器崩溃%>
<%--
版权信息
程序名称:互动.NET单用户留言簿
程序版本: Ver1.5
数据库:SQL2000
开发体系:Asp.Net
开发语言:Vb.Net
开发工具:EditPlus2.11,Vs.Net
开发作者:小宝.NET
作者Email:webmaster@chinagz.net
作者主页:http://asp.chinagz.net
MSN:webmaster@chinagz.net
备注:您可以免费使用本留言簿,也可任意对本留言簿作出修改,但请修改后Email原作者一份以作相互学习。
--%>
<Script Runat="Server">
'初始化变量
Dim myconn As OleDbConnection
Dim RecordCount,PageCount,CurrentPage,i As integer
Dim codemessage As String
dim ds as new dataset()
Dim dsxml As New dataset()
Dim pagesize as integer = ConfigurationSettings.AppSettings("每页显示留言数")
'本版本优化了代码,并且增加了代码注释。
'以下是子程序,用以处理各种事件。
Public Sub Page_Load(obj As object,e As eventargs)
'连接数据库
myconn= New OleDbConnection(ConfigurationSettings.AppSettings("数据库路径"))
myconn.open()
'如果有提交信号,执行添加留言代码。
if request.querystring("post") = "true" then
dim content as string=replace(request.form("content"),"<","<")
content=replace(content,">",">")
content=replace(content,chr(13),"<br>")
content=replace(content," "," ")
Dim updatecomm As New oledbcommand("insert into guest (name,sex,qq,email,homepage,emot,content,face,caption,ip) values ('"& request.form("username") &"','"& request.form("sex") &"','"& request.form("qq") &"','"& request.form("email") &"','"& request.form("homepage") &"','"& request.form("emot") &"','"& content &"','"& request.form("face") &"','"& request.form("caption") &"','"& request.servervariables("remote_addr") &"')",myconn)
updatecomm.executenonquery()
myconn.close()
myconn.dispose()
response.redirect("default.aspx")
end if
'如果有删除信号,执行删除代码。
if request.querystring("del")<>"" and session("isadmin")<>"" then
Dim delcomm As New oledbcommand("delete from guest where id="&request.querystring("del"),myconn)
delcomm.executenonquery()
myconn.close()
myconn.dispose()
response.redirect("default.aspx")
end if
If Not Ispostback then
'若页面未被提交,初始化留言簿设置。
systemhome.text=ConfigurationSettings.AppSettings("网站名称")
systemhome1.text=ConfigurationSettings.AppSettings("网站名称")
systemname.text=ConfigurationSettings.AppSettings("管理员")
link.href="mailto:"+ConfigurationSettings.AppSettings("管理员邮箱")
link1.href=ConfigurationSettings.AppSettings("网站地址")
linkhome.navigateurl=ConfigurationSettings.AppSettings("网站地址")
logo.imageurl=ConfigurationSettings.AppSettings("留言簿logo")
'如果是管理员,执行代码
if session("isadmin")<>"" then
goadmin.attributes("onclick")="MM_showHideLayers('setup','','show','postcontent','','hide','admin','','hide')"
setimage.imageurl="Images/button/setup.gif"
setimage.alternatetext="管理员高级设置"
Dim strfpath As string=server.mappath("web.config")
dsxml.readxml(strfpath)
setname.text=dsxml.Tables(1).Rows(0)(1)
sethomepage.text=dsxml.Tables(1).Rows(1)(1)
seturl.text=dsxml.Tables(1).Rows(2)(1)
setemail.text=dsxml.Tables(1).Rows(3)(1)
setpage.text=dsxml.Tables(1).Rows(5)(1)
setlogo.text=dsxml.Tables(1).Rows(6)(1)
setbgcolor.text=replace(dsxml.Tables(1).Rows(7)(1),"#","")
setlinebg.text=replace(dsxml.Tables(1).Rows(8)(1),"#","")
setline.text=replace(dsxml.Tables(1).Rows(9)(1),"#","")
setrebg.text=replace(dsxml.Tables(1).Rows(10)(1),"#","")
setlink.text=replace(dsxml.Tables(1).Rows(11)(1),"#","")
settext.text=replace(dsxml.Tables(1).Rows(12)(1),"#","")
setretext.text=replace(dsxml.Tables(1).Rows(13)(1),"#","")
setadmin.text=dsxml.Tables(1).Rows(14)(1)
setpassword.text=dsxml.Tables(1).Rows(15)(1)
mailserver.text=dsxml.Tables(1).Rows(16)(1)
replymail.text=dsxml.Tables(1).Rows(17)(1)
dsxml.clear()
Else
goadmin.attributes("onclick")="MM_showHideLayers('admin','','show','postcontent','','hide')"
setimage.imageurl="Images/button/button2.gif"
setimage.alternatetext="管理登录"
end if
'分页设置
viewstate("state")="all"
CurrentPage=0
viewstate("pageindex")=0
Dim intcount
Dim mycomm As New oledbcommand("select count(*) as rs from guest",myconn)
Dim dr As oledbdatareader = mycomm.executereader()
If dr.read() then
intcount=dr("rs")
else
intcount=0
End if
dr.close()
'计算共有多少条记录
recordcount = intcount
lblRecordCount.text=recordcount
'计算共有多少页
if recordcount mod pagesize=0 then
PageCount = recordcount\PageSize
else
PageCount = recordcount\PageSize +1
end if
lblpagecount.text=pagecount.tostring()
viewstate("pagecount")=pagecount
DbListBind()
End If
'初始化结束
End Sub
Public Sub DbListBind()
dim startindex As integer
'导入数据起始地址
StartIndex = CurrentPage*PageSize
Dim strSel As string = "select * from guest order by redate desc"
Dim MyAdapter As New OleDbDataAdapter(strSel,myconn)
MyAdapter.Fill(ds,startindex,PageSize,"guest")
lbnnextpage.enabled=true
lbnprevpage.enabled=true
lbnnextpage.imageurl="images/button/down.gif"
lbnprevpage.imageurl="images/button/up.gif"
If currentpage>=pagecount-1 Then
lbnnextpage.enabled=false
lbnnextpage.imageurl="images/button/down0.gif"
End If
If currentpage=0 Then
lbnprevpage.enabled=false
lbnprevpage.imageurl="images/button/up0.gif"
End If
lblcurrentpage.text=currentpage+1
End Sub
Public Sub onclick(obj As object,e As commandeventargs)'按键触发的事件
currentpage=viewstate("pageindex")
pagecount=viewstate("pagecount")
Dim cmd As string=e.commandname
Select Case cmd
Case "next"
If currentpage<pagecount-1 Then currentpage=currentpage+1
Case "prev"
If currentpage>0 Then currentpage=currentpage-1
End Select
viewstate("pageindex")=currentpage
If viewstate("state")="all" Then
DbListBind()
Else
DBListBindSearch()
End If
End Sub
Public Sub GoToSearch(obj As object,e As eventargs)'处理搜索事件
Dim searchkey As String =search.text
Dim searchcount As integer
viewstate("state")=searchkey
CurrentPage=0
viewstate("pageindex")=0
Dim mycomm As New oledbcommand("select count(*) as rs1 from guest where name like '%"& searchkey &"%' or caption like '%"& searchkey &"%' or content like '%"& searchkey &"%' or reply like '%"& searchkey &"%'",myconn)
Dim dr1 As oledbdatareader = mycomm.executereader()
If dr1.read() then
searchcount=dr1("rs1")
else
searchcount=0
End if
dr1.close()
'计算搜索共有多少条符合记录
recordcount = searchcount
lblRecordCount.text=recordcount
'计算符合的记录共有多少页
if recordcount mod pagesize=0 then
PageCount = recordcount\PageSize
else
PageCount = recordcount\PageSize +1
end if
lblpagecount.text=pagecount.tostring()
viewstate("pagecount")=pagecount
'数据邦定
dim startindex1 As integer
StartIndex1 = CurrentPage*PageSize
Dim MyAdapter1 As New OleDbDataAdapter("select * from guest where name like '%"& searchkey &"%' or caption like '%"& searchkey &"%' or content like '%"& searchkey &"%' or reply like '%"& searchkey &"%' order by id desc",myconn)
MyAdapter1.Fill(ds,startindex1,PageSize,"guest")
lbnnextpage.enabled=true
lbnprevpage.enabled=true
lbnnextpage.imageurl="images/button/down.gif"
lbnprevpage.imageurl="images/button/up.gif"
If currentpage>=pagecount-1 Then
lbnnextpage.enabled=false
lbnnextpage.imageurl="images/button/down0.gif"
End If
If currentpage=0 Then
lbnprevpage.enabled=false
lbnprevpage.imageurl="images/button/up0.gif"
End If
lblcurrentpage.text=currentpage+1
End Sub
Public Sub DBListBindSearch()
dim startindex As integer
Dim searchkey As String =search.text
StartIndex = CurrentPage*PageSize
Dim strSel As string = "select * from guest where name like '%"& searchkey &"%' or caption like '%"& searchkey &"%' or content like '%"& searchkey &"%' or reply like '%"& searchkey &"%' order by id desc"
Dim MyAdapter As New OleDbDataAdapter(strSel,myconn)
MyAdapter.Fill(ds,startindex,PageSize,"guest")
lbnnextpage.enabled=true
lbnprevpage.enabled=true
lbnnextpage.imageurl="images/button/down.gif"
lbnprevpage.imageurl="images/button/up.gif"
If currentpage>=pagecount-1 Then
lbnnextpage.enabled=false
lbnnextpage.imageurl="images/button/down0.gif"
End If
If currentpage=0 Then
lbnprevpage.enabled=false
lbnprevpage.imageurl="images/button/up0.gif"
End If
lblcurrentpage.text=currentpage+1
End Sub
Public Sub GoToPage(obj As object,e As eventargs)'处理页面跳转事件
Dim number As integer =CheckNum(lblcurrentpage.text)
If number<=viewstate("pagecount") Then
CurrentPage=number-1
viewstate("pageindex")=currentpage
pagecount=viewstate("pagecount")
If viewstate("state")="all" Then
DbListBind()
Else
DBListBindSearch()
End If
else
CurrentPage=0
viewstate("pageindex")=currentpage
pagecount=viewstate("pagecount")
If viewstate("state")="all" Then
DbListBind()
Else
DBListBindSearch()
End If
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -