private void login_Click(object sender, System.EventArgs e)
{
string username=txtusername.Text;
string password=txtpassword.Text;
int result=UserOper.CheckLogin(username,password);
switch(result)
{
case 0:err.Text="没有这个用户";break;
case 1:err.Text="密码不正确";break;
default:
{
Session["username"]=username;
Session["userlevel"]=result.ToString();
OnlineOper.UpdateOnline((string)Session["username"],Session.SessionID);
if(remrember.SelectedValue!="0")
AddLoginCookie(Convert.ToInt16(remrember.SelectedValue));
LoadLogin(1);
//LCBBS.online o=new LCBBS.online();
//o.Bind();
break;
}
}public static int CheckLogin(string username,string password)
{
            password=System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(password,"md5");
SqlParameter [] arrParms = new SqlParameter[3];
arrParms[0] = new SqlParameter("@username", SqlDbType.NVarChar,50); 
arrParms[0].Value = username;
arrParms[1] = new SqlParameter("@password", SqlDbType.NVarChar,50); 
arrParms[1].Value = password;
arrParms[2] = new SqlParameter("@result", SqlDbType.Int);
arrParms[2].Direction = ParameterDirection.Output;
SqlHelper.ExecuteNonQuery(Conn.strconn,CommandType.StoredProcedure,"sp_CheckLogin",arrParms);
return (int)arrParms[2].Value;
}

解决方案 »

  1.   

    我的EMAIL:[email protected]
    谁给我发个可以用的啊!谢谢了
      

  2.   

    参考一下下面的这个:----类文件---操作数据库的---using System;
    using System.Data;
    using System.Data.OleDb;
    using System.Data.SqlClient;
    using System.Windows.Forms ;
    using System.Collections ;//author:xiong xiangzhong
    //date:2004-12-12p
    //function: Connect to the SQL server
    //Query the SQL to server and get the Resultnamespace TTOA
    {
    /// <summary>
    /// MyDate 的摘要说明。
    /// </summary>
    public class MyData
    {
    //相关变量,用于操作数据库的类成员变量 private string m_strConnect="";
    //连接到数据库的链接字符串 private SqlConnection m_Connection=null;
    //数据连接对像

    private string m_strSql="";
    //查询语句的字符串 private bool m_ConnectFlag=false;
    //链接结果标志 //private string m_strDefaultCon="server=202.205.162.99;database=ttoa;uid=fibona;pwd=fibona;";
    private string m_strDefaultCon="server=localhost;Initial Catalog =ttoa;User ID=sa; Password=fibonaxiong"; public MyData()
    {
    //
    // TODO: 在此处添加构造函数逻辑
    //
    m_strConnect=m_strDefaultCon;
    }

    public bool Connect() //定义连接函数
    {
    try
    {
    m_Connection=new SqlConnection(m_strConnect);
    m_Connection.Open();
    m_ConnectFlag=true;
    }
    catch(Exception e)
    {
    MessageBox.Show(e.ToString(),"错误");
    m_ConnectFlag=false;
    }
    return m_ConnectFlag;
    }
    //执行查询的函数,
    //查询的结果通过myDataSet 进行返回
    //myStrSQLError返回查询执行的错误
    public bool QuerySQL(string myStrSQL,ref DataSet myDataSet,ref string myStrSQLError)
    {
    DataSet myLocalDataSet=new DataSet();
    string myStrLocalError=null;
    bool mySuccessFlag=false;

    try
    {
    if(m_ConnectFlag) //如果能够正确连接上数据库的话
    {
    SqlCommand myCommand=new SqlCommand (myStrSQL,m_Connection);
    //建立连接命令 SqlDataAdapter mydataadapter=new SqlDataAdapter(myCommand);
    //建立数据集 mydataadapter.Fill(myLocalDataSet,"temp");
    //填充数据集 mySuccessFlag=true;
    //设置标志
    }
    else
    {
    myStrLocalError="[Connection Failed]:"
    +"Please Check the Connection Parameters.";
    //设置错误字符串
    }
    }
    catch(SqlException e)
    {
    foreach(SqlError myError in e.Errors)
    {
    //反馈回错误信息
    myStrLocalError+="[Error Source]:"+
    myError.Source+"[Error Message]:" 
    +myError.Message ; }
    }
    finally
    {
    myStrSQLError=myStrLocalError;
    //取得错误信息
    myDataSet=myLocalDataSet;
    //取得数据表单集合
    }
    return mySuccessFlag;
    }
    }
    }------------登录-------
    public void btnLogin_Click(object sender, System.EventArgs e)
    {
    string userName= this.txtUserName.Text.ToString(); //设置登录用户名与密码
    string Password=this.txtPassword.Text.ToString(); 
    string strError=null;
    if(UserLogin(userName,Password,ref strError))
    {
    LoginFlag= true;
    this.Close();
    }
    else
    {
    LoginFlag= false;
    }
    }
    //根据用户提供的用户名与密码判断登录是否成功
    public bool UserLogin(string userName,string Password,ref string strError)
    {
    if (userName.Trim()=="") //如果用户名为空的话,则登录失败
    {
    MessageBox.Show(this,"用户名为空,请输入有效的用户名");
    return false;
    }

    if (Password.Trim()=="") //如果用户密码为空的话,则登录失败
    {
    MessageBox.Show(this,"用户密码不能为空,请输入有效的用户密码");
    return false;
    } bool myLoginFlag=false; //初始化登录失败标志
    string strSql=null;
    //string strError=null;
    DataSet ds =null;

    DataTable myTable =null;
    DataRow myTableRow=null; MyData mData =new MyData();
    //进行登录代码
    try
    {
    strSql="select UserName,Password from t_User_Info where Username='"+ userName + "' and Password='"+ Password +"'";
    if(mData.Connect())
    {
    if(mData.QuerySQL(strSql,ref ds,ref strError))
    { myTable=ds.Tables[0]; //第一个表的数据 myTableRow=myTable.Rows[0];//第一行数据

    if(myTableRow["Username"].ToString()==userName && myTableRow["Password"].ToString()==Password )
    {
    myLoginFlag=true;//设置登录标志为成功
    }
    else
    {
    strError="the Username;"+ userName +" and Password is Not Corrected for this System";
    }
    }
    else
    {
    strError="Error:"+strSql; //返回错误的查询语句,以便于调试
    }
    }
    else
    {
    strError="Error:database Connected Faile";
    //myLoginFlag=false;
    }
    }
    catch(Exception e)
    {
    strError=e.ToString();
    ///myLoginFlag=false;
    } return myLoginFlag;
    }还有什么要求:msn:[email protected]
      

  3.   

    string sText="select @userid=userid,@level=userlevel from userinfo where username=@username and userpassword=@userpassword";
    ManageData md=new ManageData(this.Application["server"].ToString(),this.Application["databasename"].ToString(),
    this.Application["username"].ToString(),this.Application["password"].ToString());
    SqlCommand sqlcom= md.ExecSqlCommand(sText);
    SqlParameter parusername=sqlcom.Parameters.Add("@username",SqlDbType.NVarChar,30);
    parusername.Value =this.username.Text.Trim();SqlParameter paruserpassword=sqlcom.Parameters.Add("@userpassword",SqlDbType.NVarChar,50);
    paruserpassword.Value =FormsAuthentication.HashPasswordForStoringInConfigFile(this.password.Text.Trim(),"md5");SqlParameter paruserid=sqlcom.Parameters.Add("@userid",SqlDbType.Int);
    paruserid.Direction=ParameterDirection.Output;SqlParameter parlevel=sqlcom.Parameters.Add("@level",SqlDbType.Int);
    parlevel.Direction=ParameterDirection.Output;sqlcom.ExecuteNonQuery();
    if(paruserid.Value !=DBNull.Value)
    {
                 //登陆成功
             }
    else
             {
                 //登陆失败
             }//上面的ManageData类详见下面的帖子(搜索[sqlserver的 处理类])
    http://community.csdn.net/Expert/topic/3704/3704315.xml?temp=.1012232