protected void textuser1_TextChanged(object sender, EventArgs e)
{ string user = textuser1.Text;
SqlConnection con = conn.createconnection(); con.Open(); SqlCommand cm = new SqlCommand(\count(*) from usertable where login='\+user+\,con); int count=Convert.ToInt32(cm.ExecuteScalar()); Butzc.Visible =true; if (count>0)
{ lbts.Text = \用户已存在了...\; Labpd.Text = \;
Butzc.Visible = false; } else {
lbts.Text = \;
Labpd.Text = \;
}
4.4 登陆后首页(index1.aspx)
4.4.1功能简介
用户登录成功后,显示站内的一些信息,在站内信息栏中用户可以查看那些用户要求加你为好友或查看那些用户给你留了言,当用户是班级管理员还可以查看有谁要求加入本班(不是班级管理员时此项不会显示)。查看后用户可选择接受请求或拒绝请求。人气之星栏是按用户的点击率从高到低的显示八位点击率最高的用户,最近新人栏是按用户注册时间从最近到以前显示八位最近刚注册的用户,人气之星和最近新人的显示都是用GridView控件来实现的。当点击用户头像时还可以连接到用户主页。首页页面如图4.4.1所示
图4.4.1首页页面
4.4.2 后台主要代码
主要功能是在信息栏内显示好友请求,留言,加入班级请求多少个和判断用户是否为班级管理员。根据判断结果决定是否显示加入班级请求()个这个lable标签 protected void Page_Load(object sender, EventArgs e)
- 15 -
{
string username = Session[\].ToString(); SqlConnection con = conn.createconnection(); con.Open();
SqlCommand cmd = new SqlCommand(\ + username + \, con);
SqlDataAdapter adapter = new SqlDataAdapter(); adapter.SelectCommand = cmd; DataSet dataset = new DataSet(); adapter.Fill(dataset); SqlDataReader dr;
dr = cmd.ExecuteReader(); if (dr.Read()) {
labshow1.Text = \加为好友请求(\ + dr[\].ToString() + \个\;
labshow2.Text = \留言(\ + dr[\].ToString() + \个\;
}
con.Close();
SqlConnection con1 = conn.createconnection(); con1.Open();
SqlCommand cmd1 = new SqlCommand(\ + username + \, con1);
int n =Convert.ToInt32( cmd1.ExecuteScalar()); if (n>0) {
lbbjqq.Visible = true; labshow3.Visible = true;
SqlConnection con2 = conn.createconnection(); con2.Open();
SqlCommand cmd2 = new SqlCommand(\ + username + \, con2);
SqlDataAdapter adapter2 = new SqlDataAdapter(); adapter2.SelectCommand = cmd2; DataSet dataset2 = new DataSet(); adapter2.Fill(dataset2); SqlDataReader dr2;
dr2 = cmd2.ExecuteReader(); if (dr2.Read()) {
labshow3.Text = \加入班级请求(\ + dr2[\].ToString() + \个\; }
con2.Close();
- 16 -
}
con1.Close(); }
4.5个人首页(index2.aspx)
4.5.1 功能简介
当用户点击进入个人首页后该页会显示用户的一些基本信息,用户的好友列表和我的
留言这些信息,用户可直接对留言管理进行删除操作,当点击好友列表里好友的头像时可以连接到该好友的主页去,我的好友和我的留言的显示分别使用了GridView和DataList控件来实现的,GridView直接启动了该控件的分页功能,而 DataList则自己编写了分页代码来实现分页功能。在此页中用户还可以上传或更改自己的头像,留言回复。页面显示如图4.5.1所示
图4.5.1
4.5.2 后台主要代码
以下Page_Load()事件主要实现显示用户基本信息和实现DataList控件的分页显示功能
protected void Page_Load(object sender, EventArgs e) {
SqlConnection cn = conn.createconnection(); cn.Open();
SqlCommand cmd = new SqlCommand(\ + Session[\]+ \, cn);
SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) {
Image1.ImageUrl = dr.GetString(dr.GetOrdinal(\)); labname.Text =dr.GetString(dr.GetOrdinal(\));
labrxtime.Text = dr.GetString(dr.GetOrdinal(\)); labxb.Text = dr.GetString(dr.GetOrdinal(\));
- 17 -
labbj.Text = dr.GetString(dr.GetOrdinal(\)); labsj.Text = dr.GetString(dr.GetOrdinal(\)); labqq.Text = dr.GetString(dr.GetOrdinal(\));
labemail.Text = dr.GetString(dr.GetOrdinal(\)); }
dr.Close();
SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = new SqlCommand(\* from post where login='\ + Session[\] + \, cn);
DataSet ds = new DataSet(); da.Fill(ds, \); //创建分页类
PagedDataSource objPage = new PagedDataSource(); //设置数据源
objPage.DataSource = ds.Tables[\].DefaultView; //开启分页
objPage.AllowPaging = true; //显示显示的行数 objPage.PageSize = 5; //定义变量保存当前页索引 int curPage;
//判断当前页是否有跳转请求
if (Request.QueryString[\] != null)
curPage = Convert.ToInt32(Request.QueryString[\]); else
curPage = 1;
objPage.CurrentPageIndex = curPage - 1; this.Label1.Text = curPage.ToString();
this.Label2.Text = objPage.PageCount.ToString(); if (!objPage.IsFirstPage)
{ //定义\上一页\超级连接的URL为:当前执行页面的虚拟路径,并传递下一页面的索引植
this.HyperLink1.NavigateUrl = Request.CurrentExecutionFilePath + \ + Request.QueryString[\] + \ + Convert.ToString(curPage - 1); }
if (!objPage.IsLastPage) {//下一页
this.HyperLink2.NavigateUrl = Request.CurrentExecutionFilePath + \ + Request.QueryString[\] + \ + Convert.ToString(curPage + 1); }
this.HyperLink3.NavigateUrl = Request.CurrentExecutionFilePath + \ + Request.QueryString[\] + \ + Convert.ToString(objPage.PageCount); this.DataList1.DataSource = objPage; this.DataList1.DataBind(); cn.Close();
- 18 -