index.aspx

来自「《ASP.NET C#程序设计案例教程》」· ASPX 代码 · 共 64 行

ASPX
64
字号
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<Script Language="VB" Runat="Server">
Sub Page_Load(Sender As Object,E as Eventargs)
	Dim VisitNum As Long
	'下面要判断是刚刚打开页面,还是重新打开页面
	If Session("Visited") Is Nothing Then
		'这表示客户刚刚打开页面
		VisitNum=GetVisitNum()+1						'读取原有访问次数并加1
		Session("Visited")=True							'更新访问标志
		Call AddVisitNum()								'调用过程,令访问次数加1
	Else
		'这表示客户刷新页面,或者从别的页面返回
		VisitNum=GetVisitNum()							'读取原有访问次数
	End If
	message.Text="您是第" & VisitNum & "位访客"			'显示访问次数
End Sub

'该函数用来读取原有访问次数
Function GetVisitNum() As Long
	Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("temp.mdb"))	
	Dim strSql As String = "Select * From counters"
	Dim cmd As New OleDbCommand(strSql, conn)							'建立Command对象
	conn.Open
	Dim dr As OleDbDataReader = cmd.ExecuteReader()						'建立DataReader对象
	'下面判断数据库中是否已经有记录,如有,则读取记录;如没有,则添加一条记录
	If dr.HasRows=True Then												'如有记录,dr.HasRows会返回True 
		dr.Read()														'读取一条记录
		GetVisitNum=dr.Item("VisitNum")									'返回原有访问次数
	Else
		GetVisitNum=0													'返回原有访问次数
		Call InitialVisitNum()											'调用过程添加一条记录
	End If
	conn.Close
End Function

'该过程用来添加初始记录
Sub InitialVisitNum()
	Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("temp.mdb"))	
	Dim strSql As String = "Insert Into counters(VisitNum) Values(0)"
	Dim cmd As New OleDbCommand(strSql, conn)							
	conn.Open
	cmd.ExecuteNonQuery()
	conn.Close
End Sub

'该过程用来给访问次数加1
Sub AddVisitNum()
	Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("temp.mdb"))	
	Dim strSql As String = "Update counters Set VisitNum = VisitNum + 1"
	Dim cmd As New OleDbCommand(strSql, conn)							
	conn.Open
	cmd.ExecuteNonQuery()
	conn.Close
End Sub
</Script>
<html>
<body>
	<h3 align="center">个人主页</h3>
	<asp:Label id="message" runat="server"/>
</body> 
</html> 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?