大可论坛吧 关注:2贴子:460
  • 5回复贴,共1

计数器,在线代码.lulu给的

收藏回复

  • 218.21.70.*
rs.open sql,conn,3,3
rs("统计")=rs("统计")+1
rs.update%>
<SCRIPT language=JavaScript type=text/JavaScript>
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</SCRIPT> 


1楼2005-10-06 00:00回复
    • 218.21.70.*
    页面计数器代码 

    本页访问次数: 5,128 Since 10/20/1999 日均流量: 21 
    可以计算总的页面访问次数和平均访问次数的ASP代码。 

    count2.asp


    页面访问次数:
    <%
    CounterFile = Server.MapPath ("usercount.cnt")
    Set fs = CreateObject("Scripting.FileSystemObject")
    On Error Resume Next
    Set a = fs.OpenTextFile(CounterFile, 1, 0, 0)
    usercnt = a.Readline
    set fs = Nothing
    usercnt = FormatNumber(usercnt + 1,0)
    Set fs = CreateObject("Scripting.FileSystemObject")
    set b = fs.CreateTextFile (CounterFile, 1, 0)
    b.WriteLine usercnt
    Set b = Nothing
    Response.Write usercnt
    %>
    Since 10/20/1999 


    日平均流量 
    <% startdate = DateDiff("d",Now,"10/20/1999")
    if startdate < 0 then startdate = startdate * -1
    avgvpd= Int((usercnt)/startdate)
    %> 
    <% Response.Write(avgvpd) %>


    2楼2005-10-06 01:19
    回复
      • 218.21.70.*
      Set Out=FileObject.CreateTextFile(CountFile,TRUE,FALSE) 
      Application.lock 
      '方法Application.lock禁止别的用户更改计数器的值
      counter= counter + 1 
      '计数器的值增加1
      Out.WriteLine(counter) 
      '把新的计数器值写入文件
      Application.unlock 
      '使用方法Application.unlock后,允许别的用户更改计数器的值
      Response.Write("您是第")
      Response.Write("<font color=red>")
      Response.Write(counter)
      '把计数器的值传送到浏览器,以红(red)色显示给用户
      Response.Write("</font>")
      Response.Write("位访问者")
      Out.Close 
      '关闭文件
      %> 

                   (二)与页面分离的计数器

        实际应用中,主页面与计数器程序是分离的,既只要在需要计数的页面中加入一句引用代码就可以实现页面计数。我们在网上经常申请使用的免费计数器就是这样,不过它们一般是CGI做的。这里,我们只要稍微修改一下前面我们用ASP做的简单计数器,然后在页面加入一句JavaScript语句引用它,就实现了与页面分离的计数器功能。这样,无论是作为主页面的计数器还是为某个特定页面的计数,都很方便了。显然,你需要简单更改一下存放计数器值的文件名和计数器asp源代码文件名就可以实现多个计数器。

      与页面分离的计数器txtcounter.asp代码:

      <% 
      CountFile=Server.MapPath("txtcounter.txt") 
      Set FileObject=Server.CreateObject("Scripting.FileSystemObject") 
      Set Out=FileObject.OpenTextFile(CountFile,1,FALSE,FALSE) 
      counter=Out.ReadLine 
      Out.Close 
      SET FileObject=Server.CreateObject("Scripting.FileSystemObject") 
      Set Out=FileObject.CreateTextFile(CountFile,TRUE,FALSE) 
      Application.lock 
      counter= counter + 1 
      Out.WriteLine(counter) 
      Application.unlock 
      Response.Write"document.write("&counter&")"
      '为了在页面正确显示计数器的值,调用VBScript函数Document.write
      Out.Close
      %> 

      在要计数的页面加入如下的代码:

      <p>
      您是第
      <font color=red>
      <script language="JavaScript" src="http://202.101.209.75/asptemp/counter/txtcounter.asp">
      //引用时注意ASP计数器所在的服务器及目录路径。
      </script>
      </font>
      位来客
      </p>


                  (三)与页面分离的图象计数器

        人们的追求是永无止境的,也许你需要一个更有个性的图形数字计数器,而不是简单的文本数字计数器。没问题,现在我们就来看看用ASP是怎样来实现图形计数器功能的。要实现图形计数器,关键点在于如何实现把计数器文件中的数据值转变为对应的图象表示。因为十进制数有0,1,2,3,4,5,6,7,8,9共十个不同的数数字,我们需要有十个对应的图象,且图象的文件名字要与显示的数字对应起来,比如0对应的数字图象的文件名字就是0.gif,1对应的就是1.gif,...(图象自己可以用Photoshop等工具制作,或者从网络上下载)。这里我们要用到VBScript函数Len(string | varname)、Mid(string,start[,length])。由Len(counter)可得到计数器值的位数,由Mid(counter,i,1)可以得到计数器值的第i位上的数字,我们可利用这个值来调用相应的数字图象。用For循环语句,我们不难得出计数器值各个位上的数字并转化成对应的数字图象,这样,我们就能实现文本数值到图象数字的转变。下面就是一个用ASP编写的图象计数器实例,因为大部分代码前面都分析过,所以代码中只注释了部分语句。

      与页面分离的图象计数器imgcounter.asp代码:

      <% @language="VBScript"%>
      <% 
      dim images(20)
      '定义一数组,用来存放显示每一位数字图象的语句
      CountFile=Server.MapPath("imgcounter.txt") 
      Set FileObject=Server.CreateObject("Scripting.FileSystemObject") 
      Set Out=FileObject.OpenTextFile(CountFile,1,FALSE,FALSE) 
      counter=Out.ReadLine 
      Out.Close 
      SET FileObject=Server.CreateObject("Scripting.FileSystemObject") 
      Set Out=FileObject.CreateTextFile(CountFile,TRUE,FALSE) 
      Application.lock 
      counter= counter + 1 
      Out.WriteLine(counter) 
      Application.unlock 
      countlen=len(counter)
      '得到计数器值的位数
      for i=1 to countlen
      images(i)="<img src="&"http://202.101.209.75/asptemp/counter/images/"&"/" & mid(counter,i,1) & ".gif></img>"
      '由循环语句得到各个位上数值对应图象的显示代码(html),并把它存在数组中
      '具体使用时请注意图象的实际服务器及目录路径
      response.write"document.write('"&images(i)&"');"
      '调用函数Document.write输出显示数字图象的html代码
      next
      Out.Close 
      %> 

       

      在要计数的页面加入如下的代码:

      <p>
      您是第
      <script language="JavaScript" src="http://202.101.209.75/asptemp/counter/imgcounter.asp">
      //引用时注意ASP计数器所在的服务器及目录路径。
      </script> 
      位来客
      </p>

      附注:以上asp计数器均在Windows NT Server 4.0(中文) / IIS3.0 下测试通过。以下任何一种环境都可执行ASP:
      一、Windows NT Server 4.0 / IIS3.0以上
      二、Windows NT WorkStation 4.0 / Microsoft Peer Web Service3.0以上
      三、Windows 95/98 / Microsoft Personal Web Server 1.0a以上
       
      建站栏目首页 
       
       
      版权所有:宇风多媒体 收藏本站 栏目维护制作:78932


      4楼2005-10-06 01:39
      回复
        参与回贴工作的同志,你们辛苦了,首长要求每人做一个雕像。33402857
        是真人雕像,感兴趣的看我用户资料


        禁言 |5楼2006-08-11 20:54
        回复
          • 61.144.70.*
          编写一个ASP程序,在屏幕上显示利用Cookies来显示用户访问某页面的次数


          6楼2007-01-04 20:58
          回复
            • 61.144.70.*
            编写一个ASP程序,在屏幕上显示利用Cookies来显示用户访问某页面的次数。 
             该怎么做???


            7楼2007-01-04 20:58
            回复