📄 tj_month.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace counter
{
/// <summary>
/// tj_month 的摘要说明。
/// </summary>
public class tj_month : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label lbhigh1;
protected System.Web.UI.WebControls.Label lbhigh2;
protected System.Web.UI.WebControls.Label lbhigh3;
protected System.Web.UI.WebControls.Label lbhigh4;
protected System.Web.UI.WebControls.Label lbhigh5;
protected System.Web.UI.WebControls.Label lbhigh6;
protected System.Web.UI.WebControls.Label lbhigh7;
protected System.Web.UI.WebControls.Label lbhigh8;
public static DataView dv;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
DataSet myds = new DataSet();
myds = counter.SQLConn.ExecuteSqlForDataSet("select * from CounterInfo");
dv=myds.Tables[0].DefaultView;
if(Session["master"]==null) Session["master"]="";
if(Session["whatcan"]==null) Session["whatcan"]=dv[0].Row["whatcan"].ToString();
if(Session["master"].ToString() != "master" && int.Parse(Session["whatcan"].ToString()) < 2) Response.Redirect("help.aspx?id=004&error=您没有查看月统计的权限。");
}
public string show_month_data(int show_flag)
{
if(show_flag<=1)
{
DateTime dtdatetwelve1=DateTime.Now.AddHours(int.Parse(dv[0].Row["adjtime"].ToString())).AddMonths(-11);
string strdatetwelve=dtdatetwelve1.Year.ToString()+"-"+dtdatetwelve1.Month.ToString()+"-1 00:00:00";
return do_month_data("select vmonth,count(id) as allmonth from CounterView where vtime>='"+strdatetwelve+"' group by vmonth",show_flag);
}
else
{
if(show_flag!=4)
{
return do_month_data("select vmonth,count(id) as allmonth from CounterView group by vmonth",show_flag);
}
else
{
DataSet myds1 = new DataSet();
DataView dv1=new DataView();
myds1=counter.SQLConn.ExecuteSqlForDataSet("select vyear,count(id) as allyear from CounterView group by vyear order by vyear DESC");
dv1=myds1.Tables[0].DefaultView;
dv1.Table.AcceptChanges();
string strshow_year_data_msg="";
int intmaxallyear=0;
int intsumallyear=0;
string strtheyear;
string strvallyear;
int lsbf;
for(int i=0;i<dv1.Count;i++)
{
if(int.Parse(dv1[i].Row["allyear"].ToString())>intmaxallyear) intmaxallyear=int.Parse(dv1[i].Row["allyear"].ToString());
intsumallyear+=int.Parse(dv1[i].Row["allyear"].ToString());
}
//防止除数为零而出错
if(intmaxallyear==0) intmaxallyear=1;
if(intsumallyear==0) intsumallyear=1;
for(int i=0;i<dv1.Count;i++)
{
strtheyear=dv1[i].Row["vyear"].ToString();
strvallyear=dv1[i].Row["allyear"].ToString();
strshow_year_data_msg+="<tr><td width='40' align=right><a title='"+strtheyear+"年,访问"+strvallyear+"次,";
//计算访问量的百分数,精确到小数后1位,小于零的在前面加字母0
lsbf=(int)(int.Parse(strvallyear.ToString())*1000/intsumallyear)/10;
strshow_year_data_msg+=lsbf+"%'>"+strtheyear+"</a> </td>";
strshow_year_data_msg+="<td width='230' background='images/tu_back_2.gif' align=left><img style='BORDER-left: #000000 1px solid;' src='images/tu.gif'";
strshow_year_data_msg+=" width='"+(int)(float.Parse(strvallyear.ToString())/intmaxallyear*183)+"' height='9' alt='"+strtheyear+"年,访问"+strvallyear+"次,";
strshow_year_data_msg+=lsbf+"%'> "+strvallyear+"</td></tr>";
}
dv1.Dispose();
return strshow_year_data_msg;
}
}
}
public string do_month_data(string strSql,int show_flag)
{
string strshow_month_data_msg1="";
string strshow_month_data_msg2="";
int intmaxallmonth=0;
int intsumallmonth=0;
int intthemonth;
int lsbf;
DataSet myds1 = new DataSet();
DataView dv1=new DataView();
myds1=counter.SQLConn.ExecuteSqlForDataSet(strSql);
dv1=myds1.Tables[0].DefaultView;
dv1.Table.AcceptChanges();
int[] intvallmonth=new int[12];
for(int i=0;i<dv1.Count;i++)
{
intvallmonth[int.Parse(dv1[i].Row["vmonth"].ToString())-1]=int.Parse(dv1[i].Row["allmonth"].ToString());
if(intvallmonth[int.Parse(dv1[i].Row["vmonth"].ToString())-1]>intmaxallmonth) intmaxallmonth=intvallmonth[int.Parse(dv1[i].Row["vmonth"].ToString())-1];
intsumallmonth+=intvallmonth[int.Parse(dv1[i].Row["vmonth"].ToString())-1];
}
dv1.Dispose();
//防止除数为零而出错
if(intmaxallmonth==0) intmaxallmonth=1;
if(intsumallmonth==0) intsumallmonth=1;
for(int i=0;i<12;i++)
{
if(show_flag<=1)
{
intthemonth=int.Parse(DateTime.Now.AddHours(int.Parse(dv[0].Row["adjtime"].ToString())).Month.ToString())+i;
if(intthemonth>11) intthemonth-=12;
}
else
{
intthemonth=i;
}
strshow_month_data_msg1+="<td width=15 valign=bottom background='images/tu_back.gif' align=center><img style='BORDER-BOTTOM: #000000 1px solid' src='images/tu.gif'";
strshow_month_data_msg1+=" height='"+(int)(float.Parse(intvallmonth[intthemonth].ToString())/intmaxallmonth*100)+"' width='9' alt='"+(int)(intthemonth+1)+"月";
strshow_month_data_msg1+=",访问"+intvallmonth[intthemonth]+"次,";
//计算访问量的百分数,精确到小数后1位,小于零的在前面加字母0
lsbf=(int)(int.Parse(intvallmonth[intthemonth].ToString())*1000/intsumallmonth)/10;
strshow_month_data_msg1+=lsbf+"%'></td>";
strshow_month_data_msg2+="<td width=20 align=center><a title='"+(int)(intthemonth+1)+"月,访问"+intvallmonth[intthemonth]+"次,";
strshow_month_data_msg2+=lsbf+"%'><font face='Arial' style='letter-spacing: -1'>"+(int)(intthemonth+1)+"</font></a></td>";
}
switch(show_flag)
{
case 0:
lbhigh1.Text=((int)((float)(intmaxallmonth)*10+0.5)/10).ToString();
lbhigh2.Text=((float)(int)((3*(float)(intmaxallmonth)*10/4)+0.5)/10).ToString();
lbhigh3.Text=((float)(int)(((float)(intmaxallmonth)*10/2)+0.5)/10).ToString();
lbhigh4.Text=((float)(int)(((float)(intmaxallmonth)*10/4)+0.5)/10).ToString();
return "";
case 1:
return strshow_month_data_msg1+"<td width=10><img src='images/tu_back_right.gif'></td><td width=10></td></tr><tr height='18'><td align=right><p style='line-height: 100%; margin-right: 2; margin-top: 0; margin-bottom: 0'><font face='Arial'>0</font></td><td width=10></td>"+strshow_month_data_msg2;
case 2:
lbhigh5.Text=((int)((float)(intmaxallmonth)*10+0.5)/10).ToString();
lbhigh6.Text=((float)(int)((3*(float)(intmaxallmonth)*10/4)+0.5)/10).ToString();
lbhigh7.Text=((float)(int)(((float)(intmaxallmonth)*10/2)+0.5)/10).ToString();
lbhigh8.Text=((float)(int)(((float)(intmaxallmonth)*10/4)+0.5)/10).ToString();
return "";
case 3:
return strshow_month_data_msg1+"<td width=10><img src='images/tu_back_right.gif'></td><td width=10></td></tr><tr height='18'><td align=right><p style='line-height: 100%; margin-right: 2; margin-top: 0; margin-bottom: 0'><font face='Arial'>0</font></td><td width=10></td>"+strshow_month_data_msg2;
default:
return "";
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -