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

📄 board.aspx.cs

📁 这是asp.net的校友录程序
💻 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;
using System.Data.OleDb;

namespace txl
{
	//该源码下载自www.51aspx.com(51aspx.com)
	/// <summary>
	/// board 的摘要说明。
	/// </summary>
	public partial class board : System.Web.UI.Page
	{
		OleDbConnection cn;
		OleDbCommand cmd;
		OleDbDataReader dr;
		OleDbDataAdapter da;
		DataSet ds;
		string strConn,strSQL;
		int i;
		int pagesize=8;//设置每页的留言数

		public int RsCount()//计算共有多少条记录
		{
			
			strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("txl.aspx");
			strSQL="select count(*) as rs from board where b_clid="+Page.Request["clid"].ToString()+" and b_delflag='0'";
			cn=new OleDbConnection(strConn);
			cn.Open();
			cmd=new OleDbCommand(strSQL,cn);
			dr=cmd.ExecuteReader();
			if(dr.Read())			
				i=Convert.ToInt16(dr[0].ToString());		
			else			
				i=0;
			cn.Close();
			return i;	

		}

		public int PgCount()//计算共有多少页
		{
			if(RsCount()%pagesize==0)
				return RsCount()/pagesize;
			else
				return RsCount()/pagesize+1;
		}
		public void myBind(int PgNo)//根据当前页(PgNo)绑定数据源
		{
			int rsBegin,rsEnd,n;
			string[] rsPage=new string[9]; 
			rsEnd=PgNo*pagesize-1;
			rsBegin=(PgNo-1)*pagesize;
			if(rsEnd>=RsCount())
				rsEnd=RsCount()-1;



            //打开数据源,读出所有数据
			strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("txl.aspx");
			strSQL="select b_id,b_theme,b_uid,b_date,b_editer,b_edittime,b_cnt,b_top from board where b_clid="+Page.Request["clid"].ToString()+" and b_delflag='0' ORDER BY b_top,b_date DESC";
			cn=new OleDbConnection(strConn);
			cn.Open();
			da=new OleDbDataAdapter(strSQL,cn);
			ds=new DataSet();
			da.Fill(ds,"board");
			ds.Tables["board"].Columns.Add("editinfo");
			ds.Tables["board"].Columns.Add("editurl");
			ds.Tables["board"].Columns.Add("delurl");
			ds.Tables["board"].Columns.Add("name");
			ds.Tables["board"].Columns.Add("imgurl");
			ds.Tables["board"].Columns.Add("topurl");
			for(i=0;i<ds.Tables[0].Rows.Count;i++)
			{
				strSQL="select u_name from userinfo where u_id="+ds.Tables[0].Rows[i]["b_uid"].ToString();
				cmd=new OleDbCommand(strSQL,cn);
				dr=cmd.ExecuteReader();
				while(dr.Read())
					ds.Tables[0].Rows[i]["name"]=dr[0].ToString();
				cmd.Dispose();
				dr.Close();
			}

			for(i=0;i<ds.Tables[0].Rows.Count;i++)
				if(ds.Tables[0].Rows[i]["b_editer"].ToString()!="0")
				{
					strSQL="select u_name from userinfo where u_id="+ds.Tables[0].Rows[i]["b_editer"].ToString();
					cmd=new OleDbCommand(strSQL,cn);
					dr=cmd.ExecuteReader();
					while(dr.Read())
						ds.Tables[0].Rows[i]["editinfo"]="[此贴最后由 <font color='#666666'>"+dr[0].ToString()+"</font> 在<font color='#666666'>"+ds.Tables[0].Rows[i]["b_edittime"].ToString()+"</font>编辑]";
					cmd.Dispose();
					dr.Close();
				}
			strSQL="select cl_m1,cl_m2 from classinfo where cl_id="+Page.Request["clid"].ToString();
			cmd=new OleDbCommand(strSQL,cn);
			dr=cmd.ExecuteReader();
			while(dr.Read())
			{
			
				for(i=0;i<ds.Tables[0].Rows.Count;i++)
				{
					ds.Tables[0].Rows[i]["imgurl"]="<img src=image/"+ds.Tables[0].Rows[i]["b_top"].ToString()+".gif>";//添加贴子状态图片				
					if(Session["uid"].ToString()==dr[0].ToString()|Session["uid"].ToString()==dr[1].ToString())//为管理员添加固顶选项
					
						if(ds.Tables[0].Rows[i]["b_top"].ToString()=="1")
							ds.Tables[0].Rows[i]["topurl"]="<A href=lockmsg.aspx?msgid="+ds.Tables[0].Rows[i]["b_id"].ToString()+">[发言置顶]</A>";
						else
							ds.Tables[0].Rows[i]["topurl"]="<A href=ulockmsg.aspx?msgid="+ds.Tables[0].Rows[i]["b_id"].ToString()+">[取消置顶]</A>";

							
					if(ds.Tables[0].Rows[i]["b_uid"].ToString()==Session["uid"].ToString()|Session["uid"].ToString()==dr[0].ToString()|Session["uid"].ToString()==dr[1].ToString())//为管理员和贴子作者添加编辑删除选项
					{
						ds.Tables[0].Rows[i]["editurl"]="<A href=editmsg.aspx?msgid="+ds.Tables[0].Rows[i]["b_id"].ToString()+">[编辑]</A>";
						ds.Tables[0].Rows[i]["delurl"]="<A href=delmsg.aspx?msgid="+ds.Tables[0].Rows[i]["b_id"].ToString()+">[删除]</A>";					
					}
				}
				
			}
			cmd.Dispose();
			dr.Close();

			strSQL="select u_name from userinfo where u_id="+Session["uid"].ToString();
			cmd=new OleDbCommand(strSQL,cn);
			dr=cmd.ExecuteReader();
			while(dr.Read())
				lblName.Text=dr[0].ToString();
			cmd.Dispose();
			dr.Close();

			//生成临时表
			ds.Tables.Add("page");
			ds.Tables["page"].Columns.Add("b_theme");
			ds.Tables["page"].Columns.Add("imgurl");
			ds.Tables["page"].Columns.Add("editinfo");
			ds.Tables["page"].Columns.Add("b_cnt");
			ds.Tables["page"].Columns.Add("editurl");
			ds.Tables["page"].Columns.Add("delurl");
			ds.Tables["page"].Columns.Add("topurl");
			ds.Tables["page"].Columns.Add("name");
			ds.Tables["page"].Columns.Add("b_date");
			
			for(n=rsBegin;n<=rsEnd;n++)//填充临时表
			{				
				rsPage[0]=ds.Tables[0].Rows[n]["b_theme"].ToString();
				rsPage[1]=ds.Tables[0].Rows[n]["imgurl"].ToString();
				rsPage[2]=ds.Tables[0].Rows[n]["editinfo"].ToString();
				rsPage[3]=ds.Tables[0].Rows[n]["b_cnt"].ToString();
				rsPage[4]=ds.Tables[0].Rows[n]["editurl"].ToString();
				rsPage[5]=ds.Tables[0].Rows[n]["delurl"].ToString();
				rsPage[6]=ds.Tables[0].Rows[n]["topurl"].ToString();
				rsPage[7]=ds.Tables[0].Rows[n]["name"].ToString();
				rsPage[8]=ds.Tables[0].Rows[n]["b_date"].ToString();
				ds.Tables[1].Rows.Add(rsPage);				
			}
			

            //用生成的临时表绑定	
			dltBoard.DataSource=ds.Tables["page"].DefaultView;
			dltBoard.DataBind();
			ds.Dispose();
			cn.Close();
			/*Page.Response.Write(rsBegin);
			Page.Response.Write("<br>");
			Page.Response.Write(rsEnd);*/
		}

		public void cmdState(int curPage)
		{
			if(curPage==1)
			{
				lbtFirst.Enabled=false;
				lbtPre.Enabled=false;
			}
			else
			{
				lbtFirst.Enabled=true;
				lbtPre.Enabled=true;
			}
			if(PgCount()>curPage)
			{
				lbtNext.Enabled=true;
				lbtLast.Enabled=true;
			}
			else
			{
				lbtNext.Enabled=false;
				lbtLast.Enabled=false;
			}
			/*if((curPage%2)==0)
			{
				lbt1.Enabled=true;
				lbt1.Text=Convert.ToString(curPage-1);
				lbt2.Enabled=false;
				lbt2.Text=curPage.ToString();
				if(PgCount()>curPage)
					lbtN.Enabled=true;
				else
					lbtN.Enabled=false;
				
			}
			else
			{
				lbt1.Enabled=false;
				lbt1.Text=curPage.ToString();
				if(curPage==PgCount())
					lbt2.Enabled=false;
				else
					lbt2.Enabled=true;
				lbt2.Text=Convert.ToString(curPage+1);
				if(PgCount()>(curPage+1))
					lbtN.Enabled=true;
				else
					lbtN.Enabled=false;
			}*/
			switch(curPage%3)
			{
				case 0:
					lbt1.Enabled=true;
					lbt1.Text=Convert.ToString(curPage-2);
					lbt2.Enabled=true;
					lbt2.Text=Convert.ToString(curPage-1);
					lbt3.Enabled=false;
					lbt3.Text=curPage.ToString();
					if(PgCount()>curPage)
						lbtN.Enabled=true;
					else
						lbtN.Enabled=false;
					break;
				case 1:
					lbt1.Enabled=false;
					
					if(curPage>=PgCount())
					{
						lbt2.Enabled=false;
						lbt3.Enabled=false;
					}
					else
					{
						lbt2.Enabled=true;
						if(PgCount()<=(curPage+1))
							lbt3.Enabled=false;
						else
							lbt3.Enabled=true;
					}
					lbt1.Text=curPage.ToString();
					lbt2.Text=Convert.ToString(curPage+1);
					lbt3.Text=Convert.ToString(curPage+2);
					if(PgCount()>(curPage+2))
						lbtN.Enabled=true;
					else
						lbtN.Enabled=false;
					break;
				case 2:
					lbt2.Enabled=false;
					lbt1.Enabled=true;
					if(curPage>=PgCount())
						lbt3.Enabled=false;
					else
						lbt3.Enabled=true;
					lbt1.Text=Convert.ToString(curPage-1);
					lbt2.Text=curPage.ToString();
					lbt3.Text=Convert.ToString(curPage+1);
					break;
			}

		}

	
		protected void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面
			if(Session.Count==0) Page.Response.Redirect("default.aspx");
			else 
				if(Session["uid"].ToString()=="") Page.Response.Redirect("default.aspx");
			//Page.Response.Write("One time");

			if(!Page.IsPostBack)
			{			
				ViewState["pageindex"]=1;
				myBind((int)ViewState["pageindex"]);
				cmdState((int)ViewState["pageindex"]);
				lblCur.Text=ViewState["pageindex"].ToString();
			}
			
			lblAllcon.Text=PgCount().ToString();
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    

		}
		#endregion

		protected void btnOK_Click(object sender, System.EventArgs e)
		{
			if((txtTheme.Text!="")&(txtContent.Text!=""))
			{
				strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("txl.aspx");
				strSQL="Insert INTO board(b_theme,b_uid,b_cnt,b_delflag,b_clid) Values ('"+txtTheme.Text.Replace("<","&lt").Replace(">","&gt").Replace(" ","&nbsp;").Replace("\n","<br>").Replace("'","")+"',"+Session["uid"].ToString()+",'"+txtContent.Text.Replace("'","")+"','0',"+Page.Request["clid"].ToString()+")";
				cn=new OleDbConnection(strConn);
				cmd=new OleDbCommand(strSQL,cn);
				cn.Open();
				cmd.ExecuteNonQuery();
				cmd.Dispose();
				cn.Close();			
				Page.Response.Redirect("board.aspx?clid="+Page.Request["clid"].ToString());		
			}
			else
			{
				if(txtTheme.Text=="")
					lblTheme.Visible=true;
				else
				{
					lblContent.Visible=true;
					lblTheme.Visible=false;
				}
			}

		}

		protected void lbt2_Click(object sender, System.EventArgs e)
		{			
			ViewState["pageindex"]=(((int)ViewState["pageindex"]+2)/3)*3-1;

			myBind((int)ViewState["pageindex"]);
			cmdState((int)ViewState["pageindex"]);
			lblCur.Text=ViewState["pageindex"].ToString();
			
			
		}

		protected void lbt1_Click(object sender, System.EventArgs e)
		{
			ViewState["pageindex"]=(((int)ViewState["pageindex"]+2)/3)*3-2;

			myBind((int)ViewState["pageindex"]);
			cmdState((int)ViewState["pageindex"]);
			lblCur.Text=ViewState["pageindex"].ToString();
		}

		protected void lbtFirst_Click(object sender, System.EventArgs e)
		{
			ViewState["pageindex"]=1;

			myBind((int)ViewState["pageindex"]);
			cmdState((int)ViewState["pageindex"]);
			lblCur.Text=ViewState["pageindex"].ToString();
		}

		protected void lbtLast_Click(object sender, System.EventArgs e)
		{
			ViewState["pageindex"]=PgCount();

			myBind((int)ViewState["pageindex"]);
			cmdState((int)ViewState["pageindex"]);
			lblCur.Text=ViewState["pageindex"].ToString();
		}

		protected void lbtN_Click(object sender, System.EventArgs e)
		{
			ViewState["pageindex"]=(((int)ViewState["pageindex"]+2)/3)*3+1;

			myBind((int)ViewState["pageindex"]);
			cmdState((int)ViewState["pageindex"]);
			lblCur.Text=ViewState["pageindex"].ToString();
		}

		protected void lbtPre_Click(object sender, System.EventArgs e)
		{
			ViewState["pageindex"]=(int)ViewState["pageindex"]-1;

			myBind((int)ViewState["pageindex"]);
			cmdState((int)ViewState["pageindex"]);
			lblCur.Text=ViewState["pageindex"].ToString();
		}

		protected void lbtNext_Click(object sender, System.EventArgs e)
		{
			ViewState["pageindex"]=(int)ViewState["pageindex"]+1;

			myBind((int)ViewState["pageindex"]);
			cmdState((int)ViewState["pageindex"]);
			lblCur.Text=ViewState["pageindex"].ToString();
		}

		protected void lbt3_Click(object sender, System.EventArgs e)
		{
			ViewState["pageindex"]=(((int)ViewState["pageindex"]+2)/3)*3;

			myBind((int)ViewState["pageindex"]);
			cmdState((int)ViewState["pageindex"]);
			lblCur.Text=ViewState["pageindex"].ToString();
		}
	}
}

⌨️ 快捷键说明

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