ASP.NET中用图片的方式实现静态页面累加访问量

静态页面 staticHtml.html


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>统计动态页面访问量的几种方法</title>
</head>
<body>

这是利用图片进行显示

<img src="ImageAddNumber.aspx" alt="这是动态统计的数量" />

</body>
</html> 


累加页面 ImageAddNumber.aspx(只有这一句话,其他的都删去)


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ImageAddNumber.aspx.cs" Inherits="ImageAddNumber" %>


ImageAddNumber.aspx.cs


 protected void Page_Load(object sender, EventArgs e)
    {
        string id = Request.QueryString["article_id"].ToString();       //接收传过来的新闻id
        string con = "db_newsConnectionString";                           //连接数据库字符串
        string sqlstr = "update article set article_viewnum= article_viewnum+1 where article_id="+ id +"";                 //浏览量加一
        Sql.ExecuteNonQueryReadData(con, sqlstr);
        string sqlstr2 = "select article_viewnum from article where article_id="+ id +"";                       //更新浏览数量
        DataTable dt = Sql.DataTableReadData(con, sqlstr2);
        if (dt.Rows.Count == 0)
            Response.Write("0");
        else
        {
            string pv = dt.Rows[0]["article_viewnum"].ToString();                   //图片上显示的浏览数
            System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((pv.Length * 12.5)), 22);
            Graphics g = Graphics.FromImage(image);
            //图片背景色
            g.Clear(Color.White);
            Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic));
            System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.White, Color.Red, (float)1.2f, true);
            g.DrawString(pv, font, brush, 0, 0);
            g.DrawRectangle(new Pen(Color.Gold), 0, 0, image.Width - 1, image.Height - 1);
            System.IO.MemoryStream ms = new System.IO.MemoryStream();
            image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
            Response.ClearContent();
            Response.ContentType = "image/Gif";
            Response.BinaryWrite(ms.ToArray());
        }
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值