100分求计数器的制作方法和代码。

lxllwj 2005-06-16 12:48:24
我一直用ASP。NET开发,对ASP基本不熟,现需要一个ASP的计数器,在论坛里面我看到了很多各位高手的例子,但是我拿到我的环境下都无法实现。
我的需求为:有一HTML的页面,我需要在页面里面加入计数器,因这个页面是主页,我不想改为ASP。NET的页面(改,太麻烦了),希望能得到可以直接加入到HTML页面的计数器代码,或者是制作成ASP文件,然后我在HTML里面调用(需要告诉在HTML的具体什么地方加入调用的语句)。
说明:我打算将访问的数量存在一个TXT文件内;由于对ASP基本不熟悉,请回答问题的朋友写好详细步骤。
我的E-mail:tmlwj0223@sohu.com, 希望有详细说明的朋友发邮件给我。
谢谢!
...全文
306 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
mostone 2005-06-18
  • 打赏
  • 举报
回复
<tr>
<td align="center">
XXXX 版权所有<span class="span_en">©2003 All Rights Reserved</span>
总点击计数:<script language="javascript" src="/includes/counter.asp"></script>
</td>
</tr>
mostone 2005-06-18
  • 打赏
  • 举报
回复
<% @ Language=JScript %>
<%
//========================================
//本脚本用来统计访问计数
//将访问数量写入到文本文件conter.no中
//文本文件路径为WEB根目录
//========================================

Response.Expires = -1;
Response.AddHeader ("pragma","no-cache");
Response.AddHeader ("cache-control","private");
Response.CacheControl = "No-Store";


//打开计数器文档
var logFileName = Server.MapPath("/conter.no");
var fs = Server.CreateObject("Scripting.FileSystemObject");
var file= fs.OpenTextFile(logFileName, 1, true);

//读取计数。如果计数不存在,初始为零
var count = 0;
try
{
count = parseFloat(file.ReadAll());
}
catch(ex)
{
count = 0;
}
file.close();

//增加访问计数
count++;

//更新计数器文档
file = fs.OpenTextFile(logFileName, 2);
file.Write(count.toString(10));

//清除资源
fs = null;
%>

//组合数字图片显示用HTML代码
var countNumber = <%=count%>;
var conutString = countNumber.toString(10);

//添加前置零
var iLength = conutString.length;
if ( iLength < 8)
{
for ( var i=iLength; i<8; i++)
{
conutString = "0" + conutString;
}
iLength = 8;
}

var countHtml = "";
for ( var i=0; i<iLength; i++)
{
countHtml += "<img src='/images/" + conutString.charAt(i) + ".gif'>";
}
document.write(countHtml);
游陆 2005-06-18
  • 打赏
  • 举报
回复
联系我吧:我有现成的成品/asp的计数器和javascript的计数器!
hanghwp@126.com
zy51 2005-06-18
  • 打赏
  • 举报
回复
文件清单

图片0.gif,1.gif,2.gif.....9.gif

count.asp,代码如下:

<%
Application.Lock
Set objFSO=Server.CreateObject("Scripting.FileSystemObject")
Set objTS=objFSO.OpenTextFile(Server.MapPath("counter.txt"),1,true)
If Not objTS.AtEndOfStream Then
Counts=Clng(objTS.ReadLine)
End If
Counts=Counts + 1
ObjTS.Close
Set objTS=objFSO.OpenTextFile(Server.MapPath("Counter.txt"),2,true)
objTS.WriteLine(Counts)
objTS.Close
Application.UnLock
StrCounts=CStr(Counts)
For i = 1 to len(StrCounts)
g_counts=g_counts&"<img src="&Mid(StrCounts,i,1)&".gif>"
Next
%>
document.write('你是第<%=g_counts%>位访客')

工作完毕.在需要统计的页面插入<script src=count.asp></script>即可.

不过这样的计数器有很多不完善的地方.相对来说要做得完散也不是三言两语就能说清楚的.没什么特别要求的话,用这个就可以了.
antiking 2005-06-18
  • 打赏
  • 举报
回复
方法多多!application 或 数据库加个字段 如果是论坛的话建议用application
lxllwj 2005-06-18
  • 打赏
  • 举报
回复
希望有朋友能将制作好的,能显示效果的HTML页面和ASP文件发到我的邮箱:tmlwj0223@sohu.com
wangyingdong 2005-06-18
  • 打赏
  • 举报
回复
本站总访问量:<%
tempcounter=application("visitornum")
%>
在线人数:<%
tempcounter=application("numonline")%>
把GLOBAL.ASA放在根目录下,另外建一个counter.txt
wangyingdong 2005-06-18
  • 打赏
  • 举报
回复

GLOBAL.ASA

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
sub Application_OnStart
'声明filesystemobject对象的变量
dim fsys
'声明存放记数值的文本文件路径的变量
dim counterfilename
'声明文件对象的变量
dim txtf
'创建对象
set fsys=server.CreateObject("scripting.filesystemobject")
'取得存放记数值的文件的绝对路径,这里存放记数值文件名为"counter.txt"
counterfilename=server.MapPath("counter.txt")
'如果文件存放记数值的文件不存在,创建该文件并将记数值设置为1
if not fsys.FileExists(counterfilename) then
set txtf=fsys.CreateTextFile(counterfilename)
txtf.writeline 118
txtf.close
set txtf=nothing
end if
'打开文件"counter.txt"读取其中的记数值
set txtf=fsys.OpenTextFile(counterfilename,1)
application("visitornum")=txtf.readline
txtf.close
set txtf=nothing
set fsys=nothing
'锁定application对象的属性,只能当前用户修改
application.Lock
'目前站上人数=0
application("numonline")=0
'消除application对象的属性锁定
application.UnLock
end sub

sub Application_OnEnd
'声明filesystemobject对象的变量
dim fsys
'声明存放记数值的文本文件路径的变量
dim counterfilename
'声明文件对象的变量
dim txtf
'创建对象
set fsys=server.CreateObject("scripting.filesystemobject")
'取得存放记数值的文件的绝对路径,这里存放记数值文件名为"counter.txt"
counterfilename=server.MapPath("counter.txt")
'打开文件"counter.txt"其中的记数值
set txtf=fsys.OpenTextFile(counterfilename,2,true)
txtf.writeline application("visitornum")
txtf.close
set txtf=nothing
set fsys=nothing
end sub

sub Session_OnStart
application.Lock
session("in")=now
'存放访问人数的application变量+1
application("visitornum")=application("visitornum")+1
'当前站上人数+1
application("numonline")=application("numonline")+1
application.UnLock
'将用户session对象的时限设置为5分钟
session.Timeout=5
end sub

sub Session_Onend
'存放当前站上人数的application变量-1
application.Lock
application("numonline")=application("numonline")-1
application.UnLock
end sub
</SCRIPT>
cssddnn2 2005-06-18
  • 打赏
  • 举报
回复
我买了一个 便宜的 asp.net空间!才50元!高兴!给分!!
100mb 的!可以做论坛!才 50元!!速度飞快!
www.hi876.com 你们看看
wggipkhgef 2005-06-18
  • 打赏
  • 举报
回复
使用<script language="javascript" type="text/javasctipt" src="a.asp"></script>
就可以包含进去了
pyusksk503 2005-06-17
  • 打赏
  • 举报
回复
楼上的使用文件来记录不安全!
还是用Applicaion记录比较安全一点
fqingchu 2005-06-17
  • 打赏
  • 举报
回复
<%whichfile=server.mappath("count.txt")
Set fs=CreateObject("Scripting.FileSystemObject")
Set thisfile=fs.opentextfile(whichfile)
visitors=thisfile.readline
'从文件读信息
thisfile.close
countlen=len(visitors)
for i=1 to countlen
response.write "<img src=counter/0/"&mid(visitors,i,1)&".gif></img>"
next
visitors=visitors+1
set out=fs.createtextfile(whichfile)
out.writeline(visitors)
out.close
set fs=nothing
%> 位访问者
dushizhuma 2005-06-17
  • 打赏
  • 举报
回复
其实有很多的别人做好的类可以使用。google一下应该可以找到很多。
xiangyx 2005-06-17
  • 打赏
  • 举报
回复
好像只有 cslren(位流) 朋友的答案是完全符合楼主的意思,把计算值写入到了记事本里面去
linseng129 2005-06-17
  • 打赏
  • 举报
回复
1.设定一个session("xxx")在登陆后将此session("xxx")赋值
2.第一个页面纪录count+1到数据库
其他页面判断session("xxx")后不增加计数

这样实现刷新的不重复增加
zwrtv 2005-06-17
  • 打赏
  • 举报
回复
路过学习下
epjack 2005-06-17
  • 打赏
  • 举报
回复
楼上的思路较好!




http://jack.enping.gov.cn
danis_cn 2005-06-16
  • 打赏
  • 举报
回复
通过数据库在数据库加一个表,设定一个字段

每访问一次页面字段值+1 即可

ddd880 2005-06-16
  • 打赏
  • 举报
回复
我把促使质设置为10000了
ddd880 2005-06-16
  • 打赏
  • 举报
回复
太简单了
浏览次数:<%
if application("counter")="" or application("counter")=0 then
application("counter")=1
else
application("counter")=application("counter")+1
qq=application("counter")
response.Write (qq+10000)
end if
%>次
加载更多回复(3)

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧