`
zhangziyangup
  • 浏览: 1066149 次
文章分类
社区版块
存档分类
最新评论

vb.net 网页计数器的制作

 
阅读更多

今天下午自己做了一个网页计数器。其实网上有很多的第三方计数器,用了发现速度慢,很不爽的是还要注册,所以自己网上查查资料自己写了一个,很好用。 其实原理也很简单。目前流行的制作方法有两种,一种方法是把“计数”放在数据库中。第二种方法把“计数”放在txt文件中。我采用了后者,主要涉及在global.asax文件中进行文件的读写和计数的累加。

Imports System.Web
Imports System.Web.SessionState
Imports System.io
Imports System.Collections
Imports System.ComponentModel
Imports System


Namespace Transplat
Public Class Global
Inherits System.Web.HttpApplication

#Region " 组件设计器生成的代码 "

Public Sub New()
MyBase.New()

'该调用是组件设计器所必需的。
InitializeComponent()

'在 InitializeComponent() 调用之后添加任何初始化

End Sub

'组件设计器所必需的
Private components As System.ComponentModel.IContainer

'注意: 以下过程是组件设计器所必需的
'可以使用组件设计器修改此过程。
'不要使用代码编辑器修改它。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
components = New System.ComponentModel.Container
End Sub

#End Region

Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
' 在应用程序启动时激发
Dim count As Integer = 0
Dim srd As StreamReader
Dim file_path As String = Server.MapPath("counter.txt")
srd = File.OpenText(file_path)
Dim str As String
Do While srd.Peek() >= 0

str = srd.ReadLine()
count = Integer.Parse(str)
Loop
Dim obj As Object = count
Application("counter") = obj
srd.Close()

End Sub

Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
' 在会话启动时激发
Application.Lock()
Dim jishu As Integer = 0
jishu = Integer.Parse(Application("counter").ToString)
jishu = jishu + 1
Dim obj As Object = jishu
Application("counter") = obj


'将数据记录写入文件
Dim file_path As String = Server.MapPath("counter.txt")
Dim fs As StreamWriter = New StreamWriter(file_path, False)
fs.WriteLine(jishu)
fs.Close()

End Sub

Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)
' 在每个请求开始时激发
End Sub

Sub Application_AuthenticateRequest(ByVal sender As Object, ByVal e As EventArgs)
' 尝试对使用进行身份验证时激发
End Sub

Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
' 在发生错误时激发
End Sub

Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
' 在会话结束时激发
End Sub

Sub Application_End(ByVal sender As Object, ByVal e As EventArgs)
' 在应用程序结束时激发

Dim js As Integer
js = Integer.Parse(Application("counter").ToString)
'将数据记录写入文件
Dim file_path As String = Server.MapPath("counter.txt")
Dim fs As StreamWriter = New StreamWriter(file_path, False)
fs.WriteLine(js)
fs.Close()

End Sub

End Class
End Namespace
以上的文件保存在global.asax.vb中。

我比较喜欢用dreamweaver结合vs.net开发,需要用到计数器的地方只需要加一个语句<%=application("counter")%>即可得到计数的值。可以做的好看一点就把数值的每一位分解成单个的字符,如1234分解后对应的图片为,1.gif,2.gif,3.gif,4.gif,显然图片对应的数字更美观。下面是在模版中的部分代码:

<div align="center">
<p>版权所有&copy; 2006 中国科学院遥感应用研究所 </p>
<FONT face="宋体" color="#330033">您是本站的第
<% dim s as string
dim I as integer
s=cstr(application("counter")+10^6)
s=mid(s,2,6)
for I=1 to 6
%>
<img src='../image/counter/<%=mid(s,I,1)%>.gif' width='15' height='20'>
<%next%>位访问者!</FONT>
</div>

分享到:
评论

相关推荐

    VB闪烁的标题栏 以引起注意.rar

    VB制作闪烁的窗体标题栏,这个源码演示了一个使窗体的标题栏闪烁的方法。把窗体最小化后,你会发现任务栏中的条目也在闪烁。通过调用API函数 FlashWindow 实现了窗体标题栏的闪烁,标题栏的闪烁,通常用来引起用户的...

    VB课程设计俄罗斯方块

    为了怀念经典,也为了能够给大多的计算机用户在工作之余找到一个休闲、娱乐的一个方式,我们小组开始着手用VB语言开发一个经典的俄罗斯方块游戏。 工程概况 1.1 项目名称 俄罗斯方块游戏 1.2 设计平台 VB 全称...

    Eschool校园网平台

    6、学习园地:文字处理、电子表格、课件制作、网页制作、动画制作、图像处理等。 7、信息频道:航班查询、火车时刻表、邮编区号、精彩网站、视频点播、电子图书等。 8、校友频道:校友登记、校友查询。 9、...

    c#学习笔记.txt

    · 一个名为 MoveNext 的 bool 方法,它递增项计数器并在集合中存在更多项时返回 true。 有三种使用集合的方法: 使用上述指导创建一个集合。此集合只能用于 C# 程序。 1. 使用上述指导创建一个一般集合,另外实现 ...

    C#源码大集合 02(共3卷)

    │ │ ├─第13讲 C#à VB.NET │ │ ├─第14讲 在SQL Server中存取图片 │ │ ├─第15讲 重启动远程计算机 │ │ ├─第16讲 访问Oracle数据库 │ │ └─第17讲 加行号 │ ├─第03部分 网络应用程序开发 │ │ ...

    若干源程序资料12.rar

    2012-06-11 21:09 27,688 用单片机制作的高精度数显计数器.rar 2012-06-11 21:10 9,654 用单片机实现公历到农历换算的新方法.zip 2012-06-11 21:08 2,318 用英文单词模拟数学计算代码.txt 2012-06-11 21:06 13,654 ...

    C#源码大集合 01(共3卷)

    │ ├─第6讲 消息队列的简单实例 │ │ ├─第7讲 进度条、状态栏和计时器的实例 │ │ └─第9讲 打开文件夹对话框 │ ├─第02部分 数据库ADO.NET │ │ ├─第13讲 C#à VB.NET │ │ ├─第14...

    C#源码大集合 03(共3卷)

    │ ├─第6讲 消息队列的简单实例 │ │ ├─第7讲 进度条、状态栏和计时器的实例 │ │ └─第9讲 打开文件夹对话框 │ ├─第02部分 数据库ADO.NET │ │ ├─第13讲 C#à VB.NET │ │ ├─第14...

    java源码包---java 源码 大量 实例

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    java源码包2

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    java源码包3

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    java源码包4

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,...

    JAVA上百实例源码以及开源项目源代码

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    JAVA上百实例源码以及开源项目

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

Global site tag (gtag.js) - Google Analytics