zl程序教程

您现在的位置是:首页 >  后端

当前栏目

asp.net实现静态页面累加访问量的三种方式

NetASP静态 实现 方式 页面 三种 累加
2023-06-13 09:14:16 时间
静态页面staticHtml.html
复制代码代码如下:

<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<title>统计动态页面访问量的几种方法</title>
</head>
<body>
这是在层中显示
<divid="pv"></div>
<scriptsrc="AddNumber.aspx"></script>
</body>
</html>

累加页面AddNumber.aspx
<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="AddNumber.aspx.cs"Inherits="AddNumber"%>
AddNumber.aspx.cs
代码
复制代码代码如下:

publicpartialclassAddNumber:System.Web.UI.Page
{
privatestaticintcount=1;
protectedvoidPage_Load(objectsender,EventArgse)
{
count++;
Response.Write("varpv=document.getElementById("pv");pv.innerText="+count+";");
}
}

第二种方法:
静态页面staticHtml.html
复制代码代码如下:
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<title>统计动态页面访问量的几种方法</title>
</head>
<body>
这是利用图片进行显示
<imgsrc="ImageAddNumber.aspx"alt="这是动态统计的数量"/>
</body>
</html>

累加页面ImageAddNumber.aspx
复制代码代码如下:
<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="ImageAddNumber.aspx.cs"Inherits="ImageAddNumber"%>

ImageAddNumber.aspx.cs
代码
复制代码代码如下:
publicpartialclassImageAddNumber:System.Web.UI.Page
{
privatestaticintcount=1;
protectedvoidPage_Load(objectsender,EventArgse)
{
count++;
stringpv=count.ToString();
System.Drawing.Bitmapimage=newSystem.Drawing.Bitmap((int)Math.Ceiling((pv.Length*12.5)),22);
Graphicsg=Graphics.FromImage(image);
//图片背景色
g.Clear(Color.White);
Fontfont=newSystem.Drawing.Font("Arial",12,(System.Drawing.FontStyle.Bold|System.Drawing.FontStyle.Italic));
System.Drawing.Drawing2D.LinearGradientBrushbrush=newSystem.Drawing.Drawing2D.LinearGradientBrush(newRectangle(0,0,image.Width,image.Height),Color.White,Color.Red,(float)1.2f,true);
g.DrawString(pv,font,brush,0,0);
g.DrawRectangle(newPen(Color.Gold),0,0,image.Width-1,image.Height-1);
System.IO.MemoryStreamms=newSystem.IO.MemoryStream();
image.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);
Response.ClearContent();
Response.ContentType="image/Gif";
Response.BinaryWrite(ms.ToArray());
}
}

第三种方法:
静态页面staticHtml.html
复制代码代码如下:
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<title>统计动态页面访问量的几种方法</title>
</head>
<body>
这是利用Ajax实现
<divid="ajaxpv"></div>
<scriptlanguage="javascript"type="text/javascript">
functionaddPv(){
//建立跨浏览器的XMLHttpRequest对象
varxmlhttp;
try{
xmlhttp=newActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlhttp=newActiveXObject("Microsoft.XMLHTTP");
}catch(e){
try{
xmlhttp=newXMLHttpRequest();
}catch(e){}
}
}
//创建请求
xmlhttp.open("get","AjaxPv.aspx?news=1");
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4){
if(xmlhttp.status==200){
//根据responseText判断用户名是否存在
varrepv=xmlhttp.responseText;
varmypv=document.getElementById("ajaxpv");
mypv.innerHTML=repv;
/*alert(repv);*/
}else{
alert("网络失败。");
}
}
};
xmlhttp.send(null);
window.setTimeout("addPv",1000);
}
window.onload=addPv;
</script>
</body>
</html>

累加页面AjaxPv.aspx
复制代码代码如下:
<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="AjaxPv.aspx.cs"Inherits="AjaxPv"%>

AjaxPv.aspx.cs
复制代码代码如下:
publicpartialclassAjaxPv:System.Web.UI.Page
{
privatestaticintcount=1;
protectedvoidPage_Load(objectsender,EventArgse)
{
//累加到数据库
//读取数据库中数据,目前
count=5;
Response.Write(count);
}
}