PDA

View Full Version : مشکل در فرم login برنامه



mary3541
پنج شنبه 25 تیر 1388, 22:10 عصر
توی پایگاه داده ام یه جدول به نام Tuser دارم که دارای فیلدهای ID,Name,UserName,Password می باشد. که این جدول برای login به برنامم میباشد.توی لایه نمایش برای فرم login کد زیر رو نوشتم


namespace academy
{
public partial class frmStart : Form
{
public businesslayer.blLogin objlog;
public frmStart()
{
InitializeComponent();
}
DataSet ds = new DataSet();
DataTable dt = new DataTable();
private void button1_Click(object sender, EventArgs e)
{
objlog = new businesslayer.blLogin();
ds = objlog.load();
if (ds.Tables["Tuser"].Rows.Count != 0)
{
this.Close();
frmteacher ft = new frmteacher();
ft.ShowDialog();
}
else
{
MessageBox.Show("Incorrent user");
}
}

و توی لایه business کد زیر رو نوشتم


public class blLogin
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
public datalayer.dlLogin objlog;
public blLogin()
{
objlog = new datalayer.dlLogin() ;
}
public DataSet load()
{

DataSet ds = new DataSet();
ds = objlog.loade();
return ds;
}

توی لایه data هم کد زیر رو نوشتم


public class dlLogin
{
SqlConnection con;
public dlLogin()
{
con = new SqlConnection("data source=.\\sqlexpress;attachdbfilename=|datadirecto ry|\\academy.mdf;integrated security=true; user instance=true");
}
public int ID;
public string Name;
public string UserName;
public string Password;

public DataSet loade()
{
con = new SqlConnection("data source=.\\sqlexpress;attachdbfilename=|datadirecto ry|\\academy.mdf;integrated security=true; user instance=true");
SqlDataAdapter sda = new SqlDataAdapter("select * from Tuser where UserName= '" +UserName + "' and Password='" + UserName + "'", con);
sda.SelectCommand.CommandType = CommandType.Text;
sda.SelectCommand.Parameters.AddWithValue("@UserName", UserName);
sda.SelectCommand.Parameters.AddWithValue("@Password", Password);
DataSet ds = new DataSet();
sda.Fill(ds,"Tuser");
return ds;
}


برنامم error زیر رو میده

pcseven
جمعه 26 تیر 1388, 02:28 صبح
SqlDataAdapter sda = newSqlDataAdapter("select * from Tuser where UserName= '" +UserName + "' and Password='" + UserName + "'", con);


به این صورت تغییر دهید:


SqlDataAdapter sda = newSqlDataAdapter("select * from Tuser where UserName=@UserName and Password=@Password", con);

mary3541
جمعه 26 تیر 1388, 09:42 صبح
این کار رو هم کردم ولی باز هم همون error رو میده
----------------------------------
مشکلم حل شد:لبخندساده:

اوبالیت به بو
جمعه 26 تیر 1388, 15:50 عصر
شما چرا از SqlDataReader استفاده نکردین؟؟حیف نیست...

majid325
جمعه 26 تیر 1388, 18:55 عصر
من 2 بار چک کردم ولی جایی ندیدم که username و password‌ رو مقدار دهی کنید!!!!!!
یه کمی هم معماریتون مشکل داره.

mary3541
جمعه 26 تیر 1388, 19:24 عصر
از همگی ممنون
تونستم مشکلم رو حل کنم

mostafarastin239
پنج شنبه 20 اسفند 1388, 12:08 عصر
سلام
چرا وقتی به جواب می رسید فکر نمی کنید که یک نفر دیگر هم ممکن است به این مشکل برخورد کند و اگر شما از سر بزرگواری جواب را به صورت کامل بیان کنید آن شخص علاف مسائلی که شما با آن در گیر بوده اید نمی شود و می تواند به مشکل دیگری بپردازد و در کل مسائل پیچیده تری قابل حل می باشد.
با تشکر