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;
}
{
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;
}
解决方案 »
- 通过StateServer实现session共享问题?
- 怎样模拟两个服务器
- 20090807新手求助
- 100求助!如何使得Button上的文字垂直显示!在线等!!!
- 如何二次开发水晶报表(CrystalReportViewer)打印事件?
- winform中treeview 透明背景
- 如何向一个页面发送数据包,就好像form的post一样
- 使用OpenSSL出现“无法打开文件“ssleay32d.lib””的错误,怎么办?
- Winform和Webform进行数据交换
- ADO.net向数据库中更新数据出现的问题,最后一个数据添加不上。
- 请问大侠你每次在vs.net2003中是怎样直接打开网站程序的?
- socket问题,实在找不到哪里错了。
谁给我发个可以用的啊!谢谢了
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]
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