PDA

View Full Version : سوال: login در سایت



usef.e1364
سه شنبه 23 شهریور 1389, 14:02 عصر
با سلام.
من میخواستم برای شناسایی کاربر ازapp-data توی پروژه ام استفاده نکنم و فقط با کدنویسی خودم شناسایی و... را انجام بدم. ولی نمیشه:ناراحت:
یعنی یه ساب فولدر ساختم(به اسم admin) وقتی میاد توی صفحه login بعد از شناسایی دوباره وارد صفحهlogin میشه.کسی میدونه چرا؟

maxpayn2
سه شنبه 23 شهریور 1389, 14:04 عصر
کد رو بزار تا بشه فهمید چرا

mf_engineer
چهارشنبه 24 شهریور 1389, 12:06 عصر
خب شما تو فایل webconfig می تونی تعیین کنی که بعد از لاگین کردن وارد چه صفحه ای بشه ویا اینکه با دستور Responce.redirect اینکار رو بکنی .



<authentication mode="Forms"> <forms name=".Cookie" protection="All" loginUrl="login.aspx" defaultUrl="صفحه موردنظر" path="/"> <credentials passwordFormat="Clear" > </credentials> </forms> </authentication> ویا بصورت زیر
responce.redirect("pagename")

mahallat
چهارشنبه 24 شهریور 1389, 15:15 عصر
با سلام
شما باید در هر پوشه که می خواهید مقادیر را محدود کنید یک وب کانفیگ داشته و اونا پیکره بندی کنید.

Feremerz
چهارشنبه 24 شهریور 1389, 15:52 عصر
شما از FormsAuthentication استفاده میکنید؟

usef.e1364
پنج شنبه 25 شهریور 1389, 10:16 صبح
سلام.
مراحلشو میدونم دوستان. یعنی خودم تویsub folderام web config گذاشتم. با کنترلهای آماده درست کار میکنه. ولی من میخوام خودم کدشو بنویسم. امتحان کردم،کدم کاربر را درست تشخیص میده ولی دوباره برای ورود به صفحات توی sub folderام میره به صفحه login:متعجب::ناراحت:
اینم کد توی صفحه login ام:


protected void Enter_Click(object sender, EventArgs e)
{


string cnn = connection.con;
SqlConnection myconnect = new SqlConnection(cnn);
SqlCommand mycomd = new SqlCommand("Login_user", myconnect);
mycomd.CommandType = CommandType.StoredProcedure;
mycomd.Parameters.AddWithValue("@user", txtuser.Text.Trim());
mycomd.Parameters.AddWithValue("@pass", txtpass.Text.Trim());
SqlDataAdapter da = new SqlDataAdapter(mycomd);

try
{
if (myconnect.State == ConnectionState.Open) { myconnect.Close(); }
SqlDataReader dr;
myconnect.Open();
int res = Convert.ToInt32(mycomd.ExecuteScalar());
if (res == 0)
lblmsg.Visible = true;

else
{
lblmsg.Visible = false;
Ch_state();

}
}

catch (Exception ex)
{
Response.Write(ex.Message);
}

finally
{
myconnect.Close();
}
}


protected void Ch_state(){
string cnn = connection.con;
SqlConnection myconnect = new SqlConnection(cnn);
SqlCommand mycomd = new SqlCommand("Chng_login", myconnect);
mycomd.CommandType = CommandType.StoredProcedure;
mycomd.Parameters.AddWithValue("@user",txtuser.Text.Trim());
mycomd.Parameters.AddWithValue("@pass",txtpass.Text.Trim());
SqlDataAdapter da = new SqlDataAdapter(mycomd);

try
{
if (myconnect.State == ConnectionState.Open) { myconnect.Close(); }
//SqlDataReader dr;
myconnect.Open();
int res = mycomd.ExecuteNonQuery();
if (res == 0)
{
lblmsg.Visible = true;
lblmsg.Text = "Error in Login";
}

else {
lblmsg.Visible = false;
Response.Redirect("~/Admin/Hello_admin.aspx");
//Response.Redirect("Hello.aspx");

}
}


catch (Exception ex)
{
Response.Write(ex.Message);
}

finally
{
myconnect.Close();
}




}