类库代码如下:
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 Default : System.Web.UI.Page
{
static string sValidator = "";
private readonly string sValidatorImageUrl = "ValidateImage.aspx?Validator="; protected void Page_Load(object sender, EventArgs e)
{
///添加页面初始化代码
if (!Page.IsPostBack)
{
sValidator = GetRandomint();
ValidateImage.ImageUrl = sValidatorImageUrl + sValidator;
}
} protected void LoginBtn_Click(object sender, EventArgs e)
{
///如果页面输入合法
if (Page.IsValid == true)
{
if (Validator.Text != sValidator)
{
Message.Text = "验证码输入错误,请重新输入验证码!!!";
sValidator = GetRandomint();
ValidateImage.ImageUrl = sValidatorImageUrl + sValidator;
return;
} String userId = ""; ///定义类并获取用户的登陆信息
WebDBManage.User user = new WebDBManage.User();
SqlDataReader recu = user.GetUserLogin(UserName.Text.Trim(),Password.Text.Trim()); ///判断用户是否合法
if (recu.Read())
{
userId = recu["UserID"].ToString();
}
recu.Close();
///验证用户合法性,并跳转到系统平台
if ((userId != null) && (userId != ""))
{
Session["UserID"] = userId; //跳转到登录后的第一个页面
Response.Redirect("~/Main.aspx");
}
else
{
sValidator = GetRandomint();
ValidateImage.ImageUrl = sValidatorImageUrl + sValidator;
///显示错误信息
Message.Text = "你输入的用户名称或者密码有误,请重新输入!";
}
}
} protected void CancelBtn_Click(object sender, EventArgs e)
{
///清空用户名称和密码输入框
UserName.Text = Password.Text = "";
} private String GetRandomint()
{
Random random = new Random();
return (random.Next(100000,999999).ToString());
}
}哪位高手指点一下啊~~急需~~先谢谢了啊~~
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 Default : System.Web.UI.Page
{
static string sValidator = "";
private readonly string sValidatorImageUrl = "ValidateImage.aspx?Validator="; protected void Page_Load(object sender, EventArgs e)
{
///添加页面初始化代码
if (!Page.IsPostBack)
{
sValidator = GetRandomint();
ValidateImage.ImageUrl = sValidatorImageUrl + sValidator;
}
} protected void LoginBtn_Click(object sender, EventArgs e)
{
///如果页面输入合法
if (Page.IsValid == true)
{
if (Validator.Text != sValidator)
{
Message.Text = "验证码输入错误,请重新输入验证码!!!";
sValidator = GetRandomint();
ValidateImage.ImageUrl = sValidatorImageUrl + sValidator;
return;
} String userId = ""; ///定义类并获取用户的登陆信息
WebDBManage.User user = new WebDBManage.User();
SqlDataReader recu = user.GetUserLogin(UserName.Text.Trim(),Password.Text.Trim()); ///判断用户是否合法
if (recu.Read())
{
userId = recu["UserID"].ToString();
}
recu.Close();
///验证用户合法性,并跳转到系统平台
if ((userId != null) && (userId != ""))
{
Session["UserID"] = userId; //跳转到登录后的第一个页面
Response.Redirect("~/Main.aspx");
}
else
{
sValidator = GetRandomint();
ValidateImage.ImageUrl = sValidatorImageUrl + sValidator;
///显示错误信息
Message.Text = "你输入的用户名称或者密码有误,请重新输入!";
}
}
} protected void CancelBtn_Click(object sender, EventArgs e)
{
///清空用户名称和密码输入框
UserName.Text = Password.Text = "";
} private String GetRandomint()
{
Random random = new Random();
return (random.Next(100000,999999).ToString());
}
}哪位高手指点一下啊~~急需~~先谢谢了啊~~
方法代码贴出来看看.
你确实返回的不是空?!
...
你是通用用户名和密码到数据查询的是吧,如select fields from table where username=xxx and pwd=yyy
是不是, 如果在数据库查询没有返回, 那当然是你的用户名和密码不对了, 如果密码和用户都对, 那你要检查一下你的代码哪里错了.
objMmsProject.PrjSubDeptId = objRow[MmsProjectSchema.PRJ_SUB_DEPT_ID]==DBNull.Value ? "":Convert.ToString(objRow[MmsProjectSchema.PRJ_SUB_DEPT_ID]);
如果PrjDeptId 这里变成了PrjSubDeptId ,出现两个PrjSubDeptId ,而后面相对的MmsProjectSchema.PRJ_DEPT_ID没有改变的话,是会报“ 未将对象引用设置到对象的实例”这个错误的
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.Security.Cryptography;
using SQLHelper;
using System.Data.SqlClient;
using System.Text;namespace DocumentManager
{
/// <summary>
/// Summary description for User
/// </summary>
public class User
{
public static readonly int USERTYPESUPERADMIN = 0;
public static readonly int USERTYPEADMIN = 1;
public static readonly int USERTYPENORMAL = 2; public SqlDataReader GetUserLogin(string sUserName, string sPassword)
{
///定义类SQLHelper
SQLHelper.SQLHelper sqlHelper = new SQLHelper.SQLHelper(); ///定义保存从数据库获取的结果的DataReader
SqlDataReader dr = null; ///创建访问数据库的参数
SqlParameter[] paramList = {
sqlHelper.CreateInParam("@UserName",SqlDbType.VarChar,200,sUserName),
sqlHelper.CreateInParam("@Password",SqlDbType.VarChar,255,sPassword)
}; try
{
///执行存储过程
sqlHelper.RunProc("Pr_GetUserLogin", paramList, out dr);
}
catch (Exception ex)
{
///抛出执行数据库异常
SystemError.CreateErrorLog(ex.Message);
throw new Exception(ex.Message, ex);
} ///返回从数据库获取的结果
return (dr);
} public SqlDataReader GetUsers()
{
///定义类SQLHelper
SQLHelper.SQLHelper sqlHelper = new SQLHelper.SQLHelper(); ///定义保存从数据库获取的结果的DataReader
SqlDataReader dr = null; try
{
///执行存储过程
sqlHelper.RunProc("Pr_GetUsers", out dr);
}
catch (Exception ex)
{
///抛出执行数据库异常
SystemError.CreateErrorLog(ex.Message);
throw new Exception(ex.Message, ex);
} ///返回从数据库获取的结果
return (dr);
} public SqlDataReader GetSingleUser(int nUserID)
{
///定义类SQLHelper
SQLHelper.SQLHelper sqlHelper = new SQLHelper.SQLHelper(); ///定义保存从数据库获取的结果的DataReader
SqlDataReader dr = null; ///创建访问数据库的参数
SqlParameter[] paramList = {
sqlHelper.CreateInParam("@UserID",SqlDbType.Int,4,nUserID)
}; try
{
///执行存储过程
sqlHelper.RunProc("Pr_GetSingleUser", paramList, out dr);
}
catch (Exception ex)
{
///抛出执行数据库异常
SystemError.CreateErrorLog(ex.Message);
throw new Exception(ex.Message, ex);
} ///返回从数据库获取的结果
return (dr);
} public int AddUser(string sUserName, string sPassword, string sEmail,int nRoleID)
{
///定义类SQLHelper
SQLHelper.SQLHelper sqlHelper = new SQLHelper.SQLHelper(); ///创建访问数据库的参数
SqlParameter[] paramList = {
sqlHelper.CreateInParam("@UserName",SqlDbType.VarChar,200,sUserName),
sqlHelper.CreateInParam("@Password",SqlDbType.VarChar,255,sPassword),
sqlHelper.CreateInParam("@Email",SqlDbType.VarChar,200,sEmail),
sqlHelper.CreateInParam("@RoleID",SqlDbType.Int,4,nRoleID)
}; try
{
///执行存储过程
return (sqlHelper.RunProc("Pr_AddUser", paramList));
}
catch (Exception ex)
{
///抛出执行数据库异常
SystemError.CreateErrorLog(ex.Message);
throw new Exception(ex.Message, ex);
}
} public void UpdateUserPwd(int nUserID, string sPassword)
{
///定义类SQLHelper
SQLHelper.SQLHelper sqlHelper = new SQLHelper.SQLHelper(); ///创建访问数据库的参数
SqlParameter[] paramList = {
sqlHelper.CreateInParam("@UserID",SqlDbType.Int,4,nUserID),
sqlHelper.CreateInParam("@Password",SqlDbType.VarChar,255,sPassword)
}; try
{
///执行存储过程
sqlHelper.RunProc("Pr_UpdateUserPwd", paramList);
}
catch (Exception ex)
{
///抛出执行数据库异常
SystemError.CreateErrorLog(ex.Message);
throw new Exception(ex.Message, ex);
}
} public void DeleteUser(int nUserID)
{
///定义类SQLHelper
SQLHelper.SQLHelper sqlHelper = new SQLHelper.SQLHelper(); ///创建访问数据库的参数
SqlParameter[] paramList = {
sqlHelper.CreateInParam("@UserID",SqlDbType.Int,4,nUserID)
}; try
{
///执行存储过程
sqlHelper.RunProc("Pr_DeleteUser", paramList);
}
catch (Exception ex)
{
///抛出执行数据库异常
SystemError.CreateErrorLog(ex.Message);
throw new Exception(ex.Message, ex);
}
} /// <summary>
/// 用户加密函数
/// </summary>
public static String Encrypt(string password)
{
Byte[] clearBytes = new UnicodeEncoding().GetBytes(password);
Byte[] hashedBytes = ((HashAlgorithm)CryptoConfig.CreateFromName("MD5")).ComputeHash(clearBytes); return BitConverter.ToString(hashedBytes);
} /// <summary>
/// 判断用户的类型:
/// 0:超级管理员;
/// 1:管理员;
/// 2:普通用户。
/// </summary>
/// <param name="sUserID"></param>
/// <returns>UserType</returns>
public static int IsAuthorityAdmin(string sUserID)
{
///用户ID为空
if (sUserID == null || sUserID == "")
{
return (Int32.MaxValue);
} ///获取用户所属的类型
string sUserType = "";
User user = new User();
SqlDataReader recu = user.GetSingleUser(Int32.Parse(sUserID));
if (recu.Read())
{
///读取用户类型
sUserType = recu["UserType"].ToString();
}
recu.Close();
if (sUserType == "")
{
return (Int32.MaxValue);
}
return (Int32.Parse(sUserType));
}
}
}