⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 view.aspx.cs

📁 最好用的站点内容管理系统 全部源代码都有
💻 CS
📖 第 1 页 / 共 5 页
字号:
            }
        }
        else
        {
            for (int i = 0; i < 31; i++)
            {
                if (i <= intvdays)
                {
                    arvoutday[i, 0] = arvday[i + 30 - intvdays, 0].ToString();
                    arvoutday[i, 1] = arvday[i + 30 - intvdays, 1].ToString();
                    arvoutday[i, 2] = arvday[i + 30 - intvdays, 2].ToString();
                }
                else
                {
                    arvoutday[i, 0] = "0";
                    arvoutday[i, 1] = "";
                    arvoutday[i, 2] = "7";
                }
            }
        }

        for (int i = 0; i < 31; i++)
        {
            strDayStat_msg1 += "<td width=15 valign=bottom background='../../sysImages/StatIcon/tu_back.gif' align=center><img style='BORDER-BOTTOM: #000000 1px solid' src='../../sysImages/StatIcon/tu.gif'";
            //计算统计次数
            strDayStat_msg1 += " height='" + (int)(float.Parse(arvoutday[i, 0].ToString()) / intmaxday * 100) + "' width='12' alt='" + arvoutday[i, 1] + "日,星期" + strweek[int.Parse(arvoutday[i, 2].ToString())];
            strDayStat_msg1 += ",访问" + arvoutday[i, 0] + "次,";
            //计算访问量的百分数,精确到小数后1位,小于零的在前面加字母0
            lsbf = (int)(int.Parse(arvoutday[i, 0].ToString()) * 1000 / intsumday) / 10;
            strDayStat_msg1 += lsbf + "% " + CopyRight + "'></td>";

            strDayStat_msg2 += "<td width=15 align=center><a title='" + arvoutday[i, 1] + "日,星期" + strweek[int.Parse(arvoutday[i, 2].ToString())];
            strDayStat_msg2 += ",访问" + arvoutday[i, 0] + "次,";
            strDayStat_msg2 += lsbf + "% " + CopyRight + "'>";
            switch (arvoutday[i, 2].ToString())
            {
                case "0":
                    strDayStat_msg2 += "<font face='Arial' style='letter-spacing: -1' color='red'>";
                    break;

                case "6":
                    strDayStat_msg2 += "<font face='Arial' style='letter-spacing: -1' color='red'>";
                    break;

                case "7":
                    strDayStat_msg2 += "<font face='Arial' style='letter-spacing: -1' class='fonts'>";
                    break;

                default:
                    strDayStat_msg2 += "<font face='Arial' style='letter-spacing: -1'>";
                    break;

            }
            strDayStat_msg2 += arvoutday[i, 1] + "</font></a></td>";
        }
        //执行数据操作,更新数据库
        DataTable dt1 = sta.sel_Stat(viewid, SiteID,3);
        dv1 = dt1.DefaultView;
        dv1.Table.AcceptChanges();//提交更改的数据

        int intmaxallday = 0;
        int intsumallday = 0;
        int[] intvallday = new int[31];

        for (int i = 0; i < dv1.Count; i++)
        {
            intvallday[int.Parse(dv1[i].Row["vday"].ToString()) - 1] = int.Parse(dv1[i].Row["allday"].ToString());
            if (intvallday[int.Parse(dv1[i].Row["vday"].ToString()) - 1] > intmaxallday) intmaxallday = intvallday[int.Parse(dv1[i].Row["vday"].ToString()) - 1];
            intsumallday += intvallday[int.Parse(dv1[i].Row["vday"].ToString()) - 1];
        }

        //防止除数为0而出错
        if (intmaxallday == 0) intmaxallday = 1;
        if (intsumallday == 0) intsumallday = 1;

        dv1.Dispose();

        for (int i = 0; i < 31; i++)
        {
            strDayStat_msg3 += "<td width=15 valign=bottom background='../../sysImages/StatIcon/tu_back.gif' align=center><img style='BORDER-BOTTOM: #000000 1px solid;' src='../../sysImages/StatIcon/tu.gif'";
            strDayStat_msg3 += " height='" + (int)(float.Parse(intvallday[i].ToString()) / intmaxallday * 100) + "' width='12' alt='";
            strDayStat_msg3 += i + 1 + "日,访问" + intvallday[i] + "次,";
            //计算访问量的百分数,精确到小数后1位,小于零的在前面加字母0
            lsbf = (int)(int.Parse(intvallday[i].ToString()) * 1000 / intsumallday) / 10;
            strDayStat_msg3 += lsbf + "% " + CopyRight + "'></td>";

            strDayStat_msg4 += "<td width=15 align=center><a title='" + i + 1 + "日,访问" + intvallday[i] + "次,";
            strDayStat_msg4 += lsbf + "% " + CopyRight + "'><font face='Arial' style='letter-spacing: -1'>";
            if ((i + 1) % 2 != 0) strDayStat_msg4 += i + 1;
            strDayStat_msg4 += "</font></a></td>";
        }

        switch (show_flag)
        {
            //最近31天访问量
            case 0:
                day_lbhigh1.Text = ((int)((float)(intmaxday) * 10 + 0.5) / 10).ToString();
                day_lbhigh2.Text = ((float)(int)((3 * (float)(intmaxday) * 10 / 4) + 0.5) / 10).ToString();
                day_lbhigh3.Text = ((float)(int)(((float)(intmaxday) * 10 / 2) + 0.5) / 10).ToString();
                day_lbhigh4.Text = ((float)(int)(((float)(intmaxday) * 10 / 4) + 0.5) / 10).ToString();
                return "";

            case 1:
                return strDayStat_msg1 + "<td width=10><img src='../../sysImages/StatIcon/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>" + strDayStat_msg2;
            //所有月分日访问量
            case 2:
                day_lbhigh5.Text = ((int)((float)(intmaxallday) * 10 + 0.5) / 10).ToString();
                day_lbhigh6.Text = ((float)(int)((3 * (float)(intmaxallday) * 10 / 4) + 0.5) / 10).ToString();
                day_lbhigh7.Text = ((float)(int)(((float)(intmaxallday) * 10 / 2) + 0.5) / 10).ToString();
                day_lbhigh8.Text = ((float)(int)(((float)(intmaxallday) * 10 / 4) + 0.5) / 10).ToString();
                return "";

            case 3:
                return strDayStat_msg3 + "<td width=10><img src='../../sysImages/StatIcon/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>" + strDayStat_msg4;

            default:
                return "";
        }
    }

    /// <summary>
    ///周统计的摘要说明。
    /// </summary>
    /// Code By ChenZhaoHui

    //周统计显示相关函数
    public string WeekStat(int show_flag)
    {

        //找到开始统计天数,如果天数不足7天,则跳过前面的空间
        string strWeekStat_msg1 = "";
        string strWeekStat_msg2 = "";
        string strWeekStat_msg3 = "";
        string strWeekStat_msg4 = "";

        string strvfirst;
        int intvdays;
        int intmaxday = 0;
        int intsumday = 0;
        string[] strweek = new string[] { "日", "一", "二", "三", "四", "五", "六", "" };
        int lsbf;
        //参数传递,得到相应类别下的统计
        string viewid = Request.QueryString["id"];
        //周统计视图定义
        DataView dv1 = new DataView();
        DataTable dt = sta.sel_Stat(viewid, SiteID,4);
        dv1 = dt.DefaultView;
        dv1.Table.AcceptChanges();

        if (dv1.Count > 0)
        {
            strvfirst = dv1[0].Row["vfirst"].ToString();
        }
        else
        {
            strvfirst = DateTime.Now.AddHours(0).ToString();
        }

        dv1.Dispose();
        intvdays = (int)(DateTime.Now.AddHours(0).Subtract(DateTime.Parse(strvfirst)).TotalDays);

        //声明二维数组,voutday(*,0)为访问量,voutday(*,1)为日期,voutday(*,2)为星期
        int[,] arvday = new int[7, 3];
        string[,] arvoutday = new string[7, 3];

        for (int i = 0; i < 7; i++)
        {
            arvday[i, 0] = vdaycon(DateTime.Now.AddHours(0).AddDays(i - 6).ToShortDateString());
            if (arvday[i, 0] > intmaxday) intmaxday = arvday[i, 0];
            intsumday += arvday[i, 0];
            arvday[i, 1] = (int)(DateTime.Now.AddHours(0).AddDays(i - 6).Day);
            arvday[i, 2] = (int)(DateTime.Now.AddHours(0).AddDays(i - 6).DayOfWeek);
        }

        //防止除数为0而出错
        if (intmaxday == 0) intmaxday = 1;
        if (intsumday == 0) intsumday = 1;

        //根据已统计天数将数值左移
        if (intvdays >= 7)
        {
            for (int i = 0; i < 7; i++)
            {
                arvoutday[i, 0] = arvday[i, 0].ToString();
                arvoutday[i, 1] = arvday[i, 1].ToString();
                arvoutday[i, 2] = arvday[i, 2].ToString();
            }
        }
        else
        {
            for (int i = 0; i < 7; i++)
            {
                if (i <= intvdays)
                {
                    arvoutday[i, 0] = arvday[i + 6 - intvdays, 0].ToString();
                    arvoutday[i, 1] = arvday[i + 6 - intvdays, 1].ToString();
                    arvoutday[i, 2] = arvday[i + 6 - intvdays, 2].ToString();
                }
                else
                {
                    arvoutday[i, 0] = "0";
                    arvoutday[i, 1] = "";
                    arvoutday[i, 2] = "7";
                }
            }
        }

        for (int i = 0; i < 7; i++)
        {
            strWeekStat_msg1 += "<td width=15 valign=bottom background='../../sysImages/StatIcon/tu_back.gif' align=center><img style='BORDER-BOTTOM: #000000 1px solid' src='../../sysImages/StatIcon/tu.gif'";
            strWeekStat_msg1 += " height='" + (int)(float.Parse(arvoutday[i, 0].ToString()) / intmaxday * 100) + "' width='12' alt='" + arvoutday[i, 1] + "日,星期" + strweek[int.Parse(arvoutday[i, 2].ToString())];
            strWeekStat_msg1 += ",访问" + arvoutday[i, 0] + "次,";
            //计算访问量的百分数,精确到小数后1位,小于零的在前面加字母0
            lsbf = (int)(int.Parse(arvoutday[i, 0].ToString()) * 1000 / intsumday) / 10;
            strWeekStat_msg1 += lsbf + "% " + CopyRight + "'></td>";

            strWeekStat_msg2 += "<td width=15 align=center><a title='" + arvoutday[i, 1] + "日,星期" + strweek[int.Parse(arvoutday[i, 2].ToString())];
            strWeekStat_msg2 += ",访问" + arvoutday[i, 0] + "次,";
            strWeekStat_msg2 += lsbf + "% " + CopyRight + "'>";
            switch (arvoutday[i, 2].ToString())
            {
                case "0":
                    strWeekStat_msg2 += "<font face='Arial' style='letter-spacing: -1' color='red'>";
                    break;

                case "6":
                    strWeekStat_msg2 += "<font face='Arial' style='letter-spacing: -1' color='red'>";
                    break;

                case "7":
                    strWeekStat_msg2 += "<font face='Arial' style='letter-spacing: -1' class='fonts'>";
                    break;

                default:
                    strWeekStat_msg2 += "<font face='Arial' style='letter-spacing: -1'>";
                    break;

            }
            strWeekStat_msg2 += strweek[int.Parse(arvoutday[i, 2].ToString())] + "</font></a></td>";
        }
        //执行数据操作,更新数据
        DataTable dt2 = sta.sel_Stat(viewid, SiteID,5);
        dv1 = dt2.DefaultView;
        dv1.Table.AcceptChanges();

        int intmaxallweek = 0;
        int intsumallweek = 0;
        int[] intvallweek = new int[7];

        for (int i = 0; i < dv1.Count; i++)
        {
            intvallweek[int.Parse(dv1[i].Row["vweek"].ToString())] = int.Parse(dv1[i].Row["allweek"].ToString());
            if (intvallweek[int.Parse(dv1[i].Row["vweek"].ToString())] > intmaxallweek) intmaxallweek = intvallweek[int.Parse(dv1[i].Row["vweek"].ToString())];
            intsumallweek += intvallweek[int.Parse(dv1[i].Row["vweek"].ToString())];
        }

        //防止除数为0而出错
        if (intmaxallweek == 0) intmaxallweek = 1;
        if (intsumallweek == 0) intsumallweek = 1;

        dv1.Dispose();

        for (int i = 0; i < 7; i++)
        {
            strWeekStat_msg3 += "<td width=15 valign=bottom background='../../sysImages/StatIcon/tu_back.gif' align=center><img style='BORDER-BOTTOM: #000000 1px solid;' src='../../sysImages/StatIcon/tu.gif'";
            strWeekStat_msg3 += " height='" + (int)(float.Parse(intvallweek[i].ToString()) / intmaxallweek * 100) + "' width='12' alt='星期";
            strWeekStat_msg3 += strweek[i] + ",访问" + intvallweek[i] + "次,";
            //计算访问量的百分数,精确到小数后1位,小于零的在前面加字母0
            lsbf = (int)(int.Parse(intvallweek[i].ToString()) * 1000 / intsumallweek) / 10;
            strWeekStat_msg3 += lsbf + "% " + CopyRight + "'></td>";

            strWeekStat_msg4 += "<td width=15 align=center><a title='星期" + strweek[i] + ",访问" + intvallweek[i] + "次,";
            strWeekStat_msg4 += lsbf + "% " + CopyRight + "'><font face='Arial' style='letter-spacing: -1'>" + strweek[i] + "</font></a></td>";
        }


        switch (show_flag)
        {
            case 0:
                week_lbhigh1.Text = ((int)((float)(intmaxday) * 10 + 0.5) / 10).ToString();
                week_lbhigh2.Text = ((float)(int)((3 * (float)(intmaxday) * 10 / 4) + 0.5) / 10).ToString();
                week_lbhigh3.Text = ((float)(int)(((float)(intmaxday) * 10 / 2) + 0.5) / 10).ToString();
                week_lbhigh4.Text = ((float)(int)(((float)(intmaxday) * 10 / 4) + 0.5) / 10).ToString();
                return "";

            case 1:
                return strWeekStat_msg1 + "<td width=10><img src='../../sysImages/StatIcon/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>" + strWeekStat_msg2;

            case 2:
                week_lbhigh5.Text = ((int)((float)(intmaxallweek) * 10 + 0.5) / 10).ToString();
                week_lbhigh6.Text = ((float)(int)((3 * (float)(intmaxallweek) * 10 / 4) + 0.5) / 10).ToString();
                week_lbhigh7.Text = ((float)(int)(((float)(intmaxallweek) * 10 / 2) + 0.5) / 10).ToString();
                week_lbhigh8.Text = ((float)(int)(((float)(intmaxallweek) * 10 / 4) + 0.5) / 10).ToString();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -