Asp.Net 小型网站的制作(四),涵盖了asp.net里面所有的基础知识
2015-09-10 16:34
796 查看
接下来是登录的页面
页面部分比较简单
这里我们将密码的部分在StudentInfo.cs里面
通过学生的名称id和密码进登录.调用已经实现的接口,与数据库里面取出来的进行对比!
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx.cs" Inherits="WebSql.view.List.Login" %> <%@ Register src="../../myModel/Head.ascx" tagname="Head" tagprefix="uc1" %> <%@ Register src="../../myModel/Foot.ascx" tagname="Foot" tagprefix="uc2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <style type="text/css"> .style1 { width: 528px; } </style> <script type="text/javascript" language="javascript" src="../../javascript/onunload.js"></script> </head> <body> <form id="form1" runat="server"> <div> <table style=" width:100%; height:100%; text-align:center;"> <tr> <td colspan="2"> <uc1:Head ID="Head1" runat="server" /> </td> </tr> <tr> <td align="right" class="style1"> 用户名:</td> <td align="left"> <asp:TextBox ID="txtusername" runat="server"></asp:TextBox> </td> </tr> <tr> <td align="right" class="style1"> <asp:Label ID="Label2" runat="server">用户名 zhangsan 密码 admin</asp:Label> 密码: </td> <td align="left"> <asp:TextBox ID="txtpassword" runat="server" TextMode="Password"></asp:TextBox> <asp:Label ID="Label1" runat="server"></asp:Label> </td> </tr> <tr> <td class="style1"> <asp:Button ID="Button2" runat="server" Text="登录" onclick="Button2_Click" /> </td> <td> <asp:Button ID="Button3" runat="server" OnClientClick="onunload_message()" Text="Button" /> <asp:Button ID="btnclear" runat="server" onclick="Button1_Click" Text="重置" /> </td> </tr> <tr> <td colspan="2"> <uc2:Foot ID="Foot1" runat="server" /> </td> </tr> </table> </div> </form> </body> </html>
页面部分比较简单
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using BusinessRules; namespace WebSql.view.List { public partial class Login : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Button b = (Button)sender; if (b.ID == btnclear.ID) { txtusername.Text = ""; txtpassword.Text = ""; } } protected void Button2_Click(object sender, EventArgs e) { StudentInfo stu = new StudentInfo(); stu.QueryWithKey(txtusername.Text); if (stu.Password == txtpassword.Text) { LoginMessage myLoginMessage = new LoginMessage(); myLoginMessage.StudentID = stu.StudentID; myLoginMessage.StudentName = stu.StudentName; myLoginMessage.Sex = stu.Sex; myLoginMessage.Password = stu.Password; Session["LoginMessage"] = myLoginMessage; string url = "../Classweb/ClasswebView.aspx"; Response.Redirect(url, true); } else { Label1.Text = "用户名或密码不正确"; } } } }
这里我们将密码的部分在StudentInfo.cs里面
using System; using System.Text; using System.Data; namespace BusinessRules { /// <summary> /// StudentInfo 的摘要说明。 /// </summary> public class StudentInfo:IDataBaseClass { public StudentInfo() { } string mStudentID; //学生ID string mClassID; //班级ID string mStudentName; //学生姓名 string mSex;//性别 string mBirthDay;//出生年月 string mPassword;//密码 #region 属性定义 /// <summary> /// StudentID 学生ID /// </summary> public string StudentID { get { return mStudentID; } set { mStudentID=value; } } /// <summary> /// ClassID 班级ID /// </summary> public string ClassID { get { return mClassID; } set { mClassID=value; } } /// <summary> /// StudentName 学生姓名 /// </summary> public string StudentName { get { return mStudentName; } set { mStudentName=value; } } /// <summary> /// Sex 性别 /// </summary> public string Sex { get { return mSex; } set { mSex=value; } } /// <summary> /// BirthDay 出生年月 /// </summary> public string BirthDay { get { return mBirthDay; } set { mBirthDay=value; } } /// <summary> /// Password 密码 /// </summary> public string Password { get { return mPassword; } set { mPassword=value; } } #endregion #region 接口要求的方法 #region 无条件查询 Query() /// <summary> /// 无条件查询 /// </summary> public DataTable Query() { DataSet ds=null; try { DB db=new DB(); ds=db.GetSqlDataSet(this.GetSqlString("")); } catch(Exception e) { throw(e); } return ds.Tables[0]; } #endregion #region 有条件查询 Query(string condition) /// <summary> /// 有条件查询 /// </summary> public DataTable Query(string condition) { DataSet ds=null; try { DB db=new DB(); ds=db.GetSqlDataSet(this.GetSqlString(condition)); } catch(Exception e) { throw e; } return ds.Tables[0]; } #endregion #region 根据主键查询 QueryWithKey(string keyValue) /// <summary> /// 根据主键查询 /// </summary> public void QueryWithKey(string keyValue) { DataSet ds=null; try { string cond="StudentID='"+ format(keyValue) +"'" ; DB db=new DB(); ds=db.GetSqlDataSet(this.GetSqlString(cond)); if(ds.Tables[0]!=null && ds.Tables[0].Rows.Count>0) { mStudentID=ds.Tables[0].Rows[0]["StudentID"].ToString(); mClassID=ds.Tables[0].Rows[0]["ClassID"].ToString(); mStudentName=ds.Tables[0].Rows[0]["StudentName"].ToString(); mSex=ds.Tables[0].Rows[0]["Sex"].ToString(); mBirthDay=ds.Tables[0].Rows[0]["BirthDay"].ToString(); mPassword=ds.Tables[0].Rows[0]["Password"].ToString(); } } catch(Exception e) { throw(e); } } #endregion #region 添加一条记录 Insert() /// <summary> ///添加一条记录 /// </summary> public int Insert() { StringBuilder sql=new StringBuilder(); DB db=new DB(); try { sql.Append("INSERT StudentInfo"); sql.Append("(StudentID,ClassID,StudentName,Sex,BirthDay,Password) "); sql.Append(" VALUES("); sql.Append("'"+ format(mStudentID) +"'"); sql.Append(",'"+ format(mClassID) +"'"); sql.Append(",'"+ format(mStudentName) +"'"); sql.Append(",'"+ format(mSex) +"'"); sql.Append(",'"+ format(mBirthDay) +"'"); sql.Append(",'"+ format(mPassword) +"'"); sql.Append(")"); } catch(Exception e) { throw(e); } return db.ExecuteSql(sql.ToString()); } #endregion #region 能否删除 string IsDelete(string keyValue) /// <summary> /// 能否删除,返回为null时,表示可以删除 /// 返回不为空,表示为不能删除的原因 /// </summary> public string IsDelete(string keyValue) { string temp=null; string cond=""; ScoreTable myScoreTable=new ScoreTable(); try { cond=" StudentID='" + keyValue +"'"; if(myScoreTable.IsExist(cond)) { temp="在成绩表中存在CourseID=" + keyValue +"的值"; } } catch(Exception e) { throw(e); } return temp; } #endregion #region 删除一条记录 boll Delete(string keyValue) /// <summary> /// 要求在调用IsDelete()后使用 /// 返回为true时,表示删除成功 /// 返回为false时,表示删除失败 /// </summary> public bool Delete(string keyValue) { StringBuilder sql=new StringBuilder(); DB db=new DB(); try { sql.Append(" DELETE FROM StudentInfo "); sql.Append(" WHERE StudentID='" + keyValue + "'"); db.ExecuteSql(sql.ToString()); } catch(Exception e) { throw(e); } return true; } #endregion #region 有条件删除 int DeleteWithCondition(string condition) /// <summary> /// 要求在调用IsDelete()后使用 /// 返回为true时,表示删除成功 /// 返回为false时,表示删除失败 /// 返回值为删除的记录数 /// 能否删除,完全依靠程序员的判断, /// 一般用于和其他表没有约束关系的表 /// 说明:出现删除异常时并不表示一个都没有删除 /// </summary> public int DeleteWithCondition(string condition) { StringBuilder sql=new StringBuilder(); DB db=new DB(); try { sql.Append(" DELETE FROM ScoreTable "); sql.Append(" WHERE " + condition); } catch(Exception e) { throw(e); } return db.ExecuteSql(sql.ToString()); } #endregion #region 更新 Update(string condition) /// <summary> /// 更新 /// </summary> public int Update(string condition) { StringBuilder sql=new StringBuilder(); DB db=new DB(); try { sql.Append("UPDATE StudentInfo SET "); sql.Append("ClassID='"+ format(mClassID) + "'" ); sql.Append(",StudentName='"+ format(mStudentName) + "'" ); sql.Append(",Sex='"+ format(mSex) + "'" ); sql.Append(",BirthDay='"+ format(mBirthDay) + "'" ); sql.Append(",Password='"+ format(mPassword) + "'" ); sql.Append(" WHERE " + condition); } catch(Exception e) { throw(e); } return db.ExecuteSql(sql.ToString()); } #endregion #region 通过主键更新 UpdateWithKey(string keyValue) /// <summary> /// 通过主键更新 /// </summary> public int UpdateWithKey(string keyValue) { StringBuilder sql=new StringBuilder(); DB db=new DB(); try { sql.Append("UPDATE StudentInfo SET "); sql.Append("ClassID='"+ format(mClassID) + "'" ); sql.Append(",StudentName='"+ format(mStudentName) + "'" ); sql.Append(",Sex='"+ format(mSex) + "'" ); sql.Append(",BirthDay='"+ format(mBirthDay) + "'" ); sql.Append(",Password='"+ format(mPassword) + "'" ); sql.Append(" WHERE StudentID='" + keyValue + "'"); } catch(Exception e) { throw(e); } return db.ExecuteSql(sql.ToString()); } #endregion #region 单引号的处理 format(string myString) /// <summary> /// 单引号的处理 /// </summary> public string format(string myString) { return myString.Replace("'","''"); } #endregion #region 是否存在 IsExist(string myString) /// <summary> /// 是否存在 ///返回值为true表示存在 ///返回值为false表示不存在 /// </summary> public bool IsExist(string condition) { StringBuilder sql=new StringBuilder(); DB db=new DB(); DataSet ds; try { sql.Append(" SELECT StudentID FROM StudentInfo "); sql.Append(" WHERE " + condition); ds=db.GetSqlDataSet(sql.ToString()); } catch(Exception e) { throw(e); } if(ds.Tables[0]!=null && ds.Tables[0].Rows.Count>0) { return true; } else { return false; } } #endregion #region 获取查询Sql GetSqlString(string condition) /// <summary> /// 获取查询Sql /// </summary> public string GetSqlString(string condition) { StringBuilder sql=new StringBuilder(); try { sql.Append("SELECT "); sql.Append(" StudentID,ClassID,StudentName,Sex,BirthDay,Password "); sql.Append(" FROM StudentInfo"); if(condition!="" && condition!=null) { sql.Append(" WHERE " + condition); } } catch(Exception e) { throw(e); } return sql.ToString(); } #endregion #endregion #region 自定义方法 #region 无条件查询 QueryWithClassName() /// <summary> /// 无条件查询 /// </summary> public DataTable QueryWithClassName() { DataSet ds=null; try { DB db=new DB(); StringBuilder sql=new StringBuilder(); sql.Append("SELECT "); sql.Append(" StudentID,StudentInfo.ClassID,ClassName,StudentName,Sex,BirthDay,Password "); sql.Append(" FROM StudentInfo,ClassTable"); sql.Append(" WHERE StudentInfo.ClassID=ClassTable.ClassID " ); ds=db.GetSqlDataSet(sql.ToString()); } catch(Exception e) { throw(e); } return ds.Tables[0]; } #endregion #endregion } }
通过学生的名称id和密码进登录.调用已经实现的接口,与数据库里面取出来的进行对比!
相关文章推荐
- Asp.Net 小型网站的制作(三),涵盖了asp.net里面所有的基础知识
- Asp.Net 小型网站的制作(二),涵盖了asp.net里面所有的基础知识
- Asp.Net 小型网站的制作(一),涵盖了asp.net里面所有的基础知识
- 无法向会话状态服务器发出会话状态请求请。确保 ASP.NET State Service (ASP.NET 状态服务)已启动
- asp.net文件上传解决方案(图片上传、单文件上传、多文件上传、检查文件类型)
- ASP.NET Form Authentication - Form Authentication With Directory
- ASP实例
- asp.net WebForm程序删除.designer.cs文件之后的故事
- 新装VS2015后,创建ASP.NET 5预览版模版报错问题。
- ASP语言实现对SQL SERVER数据库的操作
- asp.net中时间差的问题
- asp.net中时间差的问题
- 千万级数据分页存储过程 asp.net页面调用分页全过程
- asp防止上传图片木马原理解析
- ASP.NET操作DataTable各种方法总结(给Datatable添加行列、DataTable选择排序等)
- ASP学习笔记
- AspJpeg组件过期解决方法
- 【引用】vs2008打开aspx文件时设计界面死机的解决
- 【引用】vs2008打开aspx文件时设计界面死机的解决
- aspx的static变量