C# ASP.net 入门之简单通讯录

简单通讯录功能虽然简单,却包括了制作一个网站的基本功能!各个模块可以作为新手入门的参考。


简单通讯录实现功能:1.登录 2.注册 3.后台管理 4.前台登录显示 5.创建联系人 6.密码修改

代码下载:http://download.csdn.net/detail/wyz365889/5773253

实现功能效果图如下:













主要代码实现如下:

1.底层数据模块

 

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;


using System.Data.SqlClient;
using System.Data;

/// <summary>
/// DBManage 的摘要说明
/// </summary>
public class DBManage
{
	public DBManage()
	{
		//
		// TODO: 在此处添加构造函数逻辑
		//
	}
    string strConn = @"Data Source=WYZ-PC\SQL2005;Integrated Security=SSPI;Initial Catalog=addressBook;";
    public SqlConnection conn;


    public void sqlConn()   //连接数据库
    {
        try
        {
            conn = new SqlConnection(strConn);
            conn.Open();
        }
        catch
        {
            return;
        }
    }

    //读取语句执行结果
    public SqlDataReader readResult(string strSql)
    {
        try
        {
            SqlCommand sqlComd = new SqlCommand(strSql, conn);
            return sqlComd.ExecuteReader();
        }
        catch
        {
            throw;
        }
    }

    //读取数据到操作表中
    public bool readData(string strSql, out DataTable dt)
    {
        dt = new DataTable();
        try
        {
            SqlDataAdapter sda = new SqlDataAdapter(strSql, conn);
            sda.Fill(dt);
            return true;
        }
        catch (Exception e)
        {           
            return false;
        }

    }

    //执行插入,更新语句
    public bool execSql(string strSql)
    {
        SqlCommand sc = new SqlCommand(strSql, conn);
        try
        {
            sc.ExecuteNonQuery();
            return true;

        }
        catch (Exception e)
        {           
            return false;
        }

    }

    //查询是否存在数据
    public bool isExistData(string strSql)
    {
        bool flag = false;
        try
        {
            using (SqlCommand sc = new SqlCommand())
            {
                sc.CommandText = strSql;
                sc.Connection = conn;
                SqlDataReader sr = sc.ExecuteReader();

                if (sr.HasRows)
                {
                    flag = true;
                }

                sr.Close();
            }
        }
        catch (Exception e)
        {          
            flag = false;

        }
        return flag;

    }

    public void closeDB()
    {
        conn.Close();
        conn.Dispose();
    }
}


2.登录代码

 

 

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Data.SqlClient;


public partial class login : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
       
    }
    protected void Button_Login_Click(object sender, EventArgs e)
    {
        DBManage db = new DBManage();
        db.sqlConn();   //数据库连接

        string strUserID = TextBox1_userID.Text.Trim();
        string strPwd = TextBox2_pwd.Text.Trim();

        if (strUserID == "" || strPwd == "")
        {
            Label1_meg.Text = "提示:用户名或者密码不能为空!";            
        }
        else
        {
            string strSql = @"select * from tb_user";

            if (!db.isExistData(strSql))    //不存在用户,添加默认用户
            {
                db.execSql(@"insert into tb_user values('admin','admin','admin','管理员')");
            }

            string strSql2 = "select * from tb_user where userID='" + strUserID + "' and pwd='" + strPwd + "'";
            if (db.isExistData(strSql2))
            {

                SqlDataReader sqlRead = db.readResult(strSql2);
                sqlRead.Read();

                string strRole = sqlRead[3].ToString();
                sqlRead.Close();
                db.closeDB();   //关闭数据库
              

                if (strRole.Trim().Equals("管理员"))     //管理员权限
                {

                    Response.Redirect("admin.aspx?userID=" + strUserID);
                    
                }
                else if (strRole.Trim() == "普通用户")    //普通用户权限
                {
                    Response.Redirect("userInfo.aspx?userID=" + strUserID);

                }


               
            }
            else
            {
                Label1_meg.Text = "提示:密码或帐号不正确,请重新输入!";
                TextBox1_userID.Text = "";
                TextBox2_pwd.Text = "";            
            }

        }
    }
}


3.注册代码

 

 

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class register : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    DBManage db;
    protected void Button_reg_Click(object sender, EventArgs e)
    {
        db = new DBManage();
        db.sqlConn();

        string strUserID = TextBox1_userID.Text.Trim();
        string strName = TextBox2_name.Text.Trim();
        string strPwd = TextBox4_pwd1.Text.Trim();
        string strPwd2 = TextBox1_pwd2.Text.Trim();
        string strRole = "普通用户";


        string strSql2 = "insert into tb_user values('" + strUserID + "','" + strName + "','" + strPwd + "','" + strRole + "')";

        if (db.execSql(strSql2))
        {
            Response.Write("<script>alert('注册成功!');window.location.href ='login.aspx'</script>");

            return;
        }
    }
}


4.后台管理代码

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class admin : System.Web.UI.Page
{
    DBManage db;
    string strUserID;
    protected void Page_Load(object sender, EventArgs e)
    {

        if (!Page.IsPostBack)
        {
            MyBind("select * from tb_user");
            strUserID = Request.QueryString["userID"].ToString();
        
            HyperLink1_pwd.NavigateUrl = "~/pwd.aspx?userID=" + strUserID;
        }  

    }

    void MyBind(String strSql)
    {
        db = new DBManage();
        db.sqlConn();      
        SqlDataAdapter da = new SqlDataAdapter(strSql, db.conn);
        DataSet ds = new DataSet();
        da.Fill(ds);
        GridView1.DataSource = ds;
        GridView1.DataBind();
    }  

    protected void Button1_Click(object sender, EventArgs e)
    {

        string strKey = TextBox1_key.Text.Trim();
        string strID = "";
        if (DropDownList1_select.Text == "用户名")
        {
            strID = "userID";
        }
        if (DropDownList1_select.Text == "姓名")
        {
            strID = "userName";
        }
        if (DropDownList1_select.Text == "权限")
        {
            strID = "role";
        }

        String strSql = "select * from tb_user where " + strID + " like '" + strKey + "%'";

        MyBind(strSql);  

    }
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        db = new DBManage();
        db.sqlConn();
        
        string sql = "delete from tb_user where userID='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";
        SqlCommand cmd = new SqlCommand(sql, db.conn);      
        cmd.ExecuteNonQuery();
        db.closeDB();
        MyBind("select * from tb_user");//调用MyBind()子程序  
    }
}

 

 

5.前台登录显示

 

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Data.SqlClient;

public partial class userInfo : System.Web.UI.Page
{
    DBManage db;
    string strUserID="";

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            MyBind("select * from tb_info");
            strUserID = Request.QueryString["userID"].ToString();
           
            HyperLink1_pwd.NavigateUrl = "~/pwd.aspx?userID=" + strUserID;
            HyperLink1_new.NavigateUrl = "~/newInfo.aspx?userID=" + strUserID;
        }  
    }

    void MyBind(String strSql)
    {
        db = new DBManage();
        db.sqlConn();
        SqlDataAdapter da = new SqlDataAdapter(strSql, db.conn);
        DataSet ds = new DataSet();
        da.Fill(ds);
        GridView1.DataSource = ds.Tables[0].DefaultView;
        GridView1.DataBind();
    }
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {

        string sql = "delete from tb_info where num=" + GridView1.DataKeys[e.RowIndex].Values[0].ToString() + " and userID='"
            + GridView1.DataKeys[e.RowIndex].Values[1].ToString() + "'";
        db = new DBManage();
        db.sqlConn();
        SqlCommand cmd = new SqlCommand(sql, db.conn);
        //执行删除操作   
       
        cmd.ExecuteNonQuery();
        db.closeDB();
        MyBind("select * from tb_info");//调用MyBind()子程序 
    }
    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
       
        GridView1.EditIndex = e.NewEditIndex;

        String strSql = "select * from tb_info where num=" + GridView1.DataKeys[e.NewEditIndex].Values[0].ToString()+" and userID='"
            +GridView1.DataKeys[e.NewEditIndex].Values[1].ToString()+"'";
      
        MyBind(strSql);  

    }
    protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
        GridView1.EditIndex = -1;
        MyBind("select * from tb_info");  

    }
    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        db = new DBManage();
        db.sqlConn();

        TextBox name, sex, phone, qq,birthday, remark;
        
       
        name = (TextBox)GridView1.Rows[e.RowIndex].Cells[0].Controls[0];
        sex = (TextBox)GridView1.Rows[e.RowIndex].Cells[1].Controls[0];
        phone = (TextBox)GridView1.Rows[e.RowIndex].Cells[2].Controls[0];
        qq = (TextBox)GridView1.Rows[e.RowIndex].Cells[3].Controls[0];
        birthday = (TextBox)GridView1.Rows[e.RowIndex].Cells[4].Controls[0];
        remark = (TextBox)GridView1.Rows[e.RowIndex].Cells[5].Controls[0];


        String strSql = "update tb_info set name='" + name.Text + "',sex='" + sex.Text +
            "',phone='" + phone.Text + "',qq='" + qq.Text + "',birthday=" + birthday.Text.Substring(0,9)+ ",remark='" +
            remark.Text + "' where num=" + GridView1.DataKeys[e.RowIndex].Values[0].ToString() + " and userID='"
            + GridView1.DataKeys[e.RowIndex].Values[1].ToString() + "'";
   


        db.execSql(strSql);
        
      

        GridView1.EditIndex = -1;
        MyBind("select * from tb_info");//调用MyBind()子程序 
    }
    protected void Button1_Click(object sender, EventArgs e)
    {       
        string strKey = TextBox2.Text.Trim();

        String strSql = "select * from tb_info where name like '" + strKey + "%' or phone like '" + strKey
            +"%' or qq like '" + strKey + "%'";

        MyBind(strSql);  
    }
}


6.密码修改

 

 

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class pwd : System.Web.UI.Page
{
    string strUserID;
    DBManage db;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            strUserID = Request.QueryString["userID"].ToString();
            TextBox1_userID.Text = strUserID;
            TextBox1_userID.Enabled = false;
        }
    }

    protected void  Button_pwd_Click(object sender, EventArgs e)
    {
        db = new DBManage();
        db.sqlConn();

        string strNewPwd = TextBox4_pwd1.Text.Trim();
        string strRPwd = TextBox1_pwd2.Text.Trim();
        string strSql = "select * from tb_user where userID='" + TextBox1_userID.Text.ToString() + "'";
        Label1.Text = TextBox1_userID.Text + db.isExistData(strSql).ToString() + strNewPwd.Equals(strRPwd).ToString();
        if (db.isExistData(strSql))
        {
            if (strNewPwd.Equals(strRPwd))
            {
                string strSql2 = "update tb_user set pwd='" + strNewPwd + "' where userID='" + TextBox1_userID.Text.ToString() + "'";

                if (db.execSql(strSql2))
                {
                    Label1.Text = "密码修改成功!";
                }
            }
            else
            {
                 Label1.Text = "两遍输入密码不一样!";           
            }
        }

        db.closeDB();
       
    }

}


7.创建联系人

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Data.SqlClient;

public partial class newInfo : System.Web.UI.Page
{
    DBManage db;
    string strUserID;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            TextBox1_birthday.Enabled = false;
            strUserID = Request.QueryString["userID"].ToString();
            HyperLink1_back.NavigateUrl = "~/userInfo.aspx?userID=" + strUserID;
        }
        else
        {
            strUserID = Request.QueryString["userID"].ToString();
        }
    }


    protected void Calendar1_SelectionChanged(object sender, EventArgs e)
    {        
        TextBox1_birthday.Text = Calendar1.SelectedDate.ToString("yyyy-MM-dd");
    }
    protected void Button_reg_Click(object sender, EventArgs e)
    {
        db = new DBManage();
        db.sqlConn();

        string strName = TextBox2_name.Text.Trim();
        string strPhone = TextBox4_phone.Text.Trim();
        string strQQ = TextBox1_qq.Text.Trim();
        string strRemark = TextBox3_remark.Text;
        string strSex = "";


        if (RadioButton1.Checked)
        {
            strSex = "男";
        }

        if (RadioButton2.Checked)
        {
            strSex = "女";
        }

        string strBir = TextBox1_birthday.Text;

        string strSql = "select * from tb_info where name='" + strName + "' or phone='"+ strPhone + "'";
       
        if (db.isExistData(strSql))
        {
            Label1.Text = "该信息已存在!";
            return;
        }

        string strSql2 = "insert into tb_info values('"+ strUserID +"','"+ strName + "','" + strSex + "','"
            + strPhone + "','" + strQQ + "','" + strBir + "','" + strRemark + "')";
        Label1.Text = strSql2;
        if (db.execSql(strSql2))
        {
            Label1.Text = "新建联系人成功!";          
            return;
        }
    }
}

 

 


 

posted @ 2013-07-18 19:00  坚固66  阅读(650)  评论(0编辑  收藏  举报