⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 default.aspx

📁 网络编程
💻 ASPX
📖 第 1 页 / 共 5 页
字号:
<%--导入名称空间--%>
<% @ Import Namespace="System.Data" %>
<% @ Import Namespace="System.Data.OleDb" %>
<% @ Import Namespace="System.Xml" %>
<% @ Import Namespace="System.IO" %>
<%server.scripttimeout=300 '设置页面脚本超时,请不要删除,防止程序产生错误引起服务器崩溃%>
<%--
版权信息
程序名称:互动.NET单用户留言簿
程序版本: Ver1.5
数据库:ACCESS2000
开发体系: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("Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.MapPath(ConfigurationSettings.AppSettings("数据库路径"))&"")
myconn.open()
'如果有提交信号,执行添加留言代码。
if request.querystring("post") = "true" then
dim content as string=replace(request.form("content"),"<","&lt;")
content=replace(content,">","&gt;")
content=replace(content,chr(13),"<br>")
content=replace(content," ","&nbsp;")
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 + -