PDA

View Full Version : ساخت کاربر جدید مشکل



delphi77
یک شنبه 25 شهریور 1386, 14:34 عصر
من یک کاربر جدید که می سازم session من را می بنده مال اون را باز می کنه :عصبانی:

maysamchegini
یک شنبه 25 شهریور 1386, 15:39 عصر
در کجا کاربر جدید می سازی؟
بیشتر توضیح بده

delphi77
دوشنبه 26 شهریور 1386, 11:27 صبح
من با کمک کنترل createuserwizard این کار را می کنم
در واقع مدیر کاربر جدید را ایجاد می کنه

web developer
دوشنبه 26 شهریور 1386, 12:13 عصر
من یک کاربر جدید که می سازم session من را می بنده مال اون را باز می کنه :عصبانی:


سلام

دو حالت وجود داره:

1- اسم session مدیر و یوزر یکسان انتخاب شده!
2- قبل از ایجاد session جدید session های قبلی با یکی از کدهای زیر پاک میشن:


session.clear()
session.Abandon()

موفق باشید.

delphi77
دوشنبه 26 شهریور 1386, 12:22 عصر
من اصلا یک خط کد هم ننوشتم همشو خودش نوشت asp.net2 را می گم

delphi77
دوشنبه 26 شهریور 1386, 13:25 عصر
کسی راه حلی به نظرش نمی رسه؟

Behrouz_Rad
دوشنبه 26 شهریور 1386, 13:53 عصر
البته مطمئن نیستم اما اگر پروژت فایل Global.asax نداره بهش اضافه کن.

abadanboy
دوشنبه 26 شهریور 1386, 14:12 عصر
یه صفخه LOGIN


<script language="C#" runat="server">
SqlConnection masir;
SqlCommand taxi;
SqlDataReader reader;
public void Page_Load(object sender, EventArgs e)
{
masir = new SqlConnection(Convert.ToString(Session["CPSLog"]));

lblmessage.Text = "";

}
public void sabt(object sender, EventArgs ee)
{

try
{

masir.Open();
taxi = new SqlCommand();
taxi.Connection = masir;
taxi.CommandText = "select Uname,pass from TblLogin where Uname=N'" + txtuser.Text + "' and pass=N'" + txtpass.Text +"'";
reader = taxi.ExecuteReader();
if (reader.HasRows)
{
Session["Login"] = "yes";
Session["user"] = txtuser.Text;
Response.Redirect("ControlPanel.aspx");
}
else
{
lblmessage.Text = "نام کاربری یا رمز عبور اشتباه وارد شده";
}
masir.Close();
}
catch
{
lblmessage.Text = "Die. Baby";
}
}

یه صفحه ساخت یوزر


<script language="C#" runat="server">
SqlConnection masir;
SqlCommand taxi;
public void Page_Load(object sender, EventArgs ee)
{
masir = new SqlConnection(Convert.ToString(Session["CPSLog"]));
string LOGINTO = Session["Login"].ToString();

if (LOGINTO == "no")
{
Response.Redirect("..\\Default.aspx");
}

}
public void sabt(object sender, EventArgs ee)
{

masir.Open();
bool check=true;
if (txtuser.Text.Length < 5) {
lblmsg.Text="کلمه عبور کمتر از 5 حرف می باشد ";
check=false;
}
if (txtpass.Text.Length < 8)
{
lblmsg.Text=" رمز عبور کمتر از 8 حرف می باشد ";
check=false;
}
if (txtpass.Text.Trim() != txtconf.Text.Trim())
{
lblmsg.Text="تکرار رمز عبور با رمز عبور تطابق ندارد ";
check=false;
}

if(txtuser.Text.Trim()==""){
check=false;
}
if(txtpass.Text.Trim()==""){
check=false;
}
if(txtconf.Text.Trim()==""){
check=false;
}

if (check=true)
{
try
{

taxi = new SqlCommand();
taxi.Connection = masir;

taxi.CommandText = "insert into TblLogin values(N'" + txtuser.Text.Trim() + "',N'" + txtpass.Text.Trim() + "','" + txtemail.Text + "')";

taxi.ExecuteNonQuery();

lblmsg.Text = " ثبت شد " + txtuser.Text + " " + "کاربر شما با نام کاربری";
txtemail.Text = "";
txtuser.Text = "";

}
catch (Exception f)
{
lblmsg.Text="کلمه عبور تکراری می باشد";
}


}

}

delphi77
دوشنبه 26 شهریور 1386, 15:06 عصر
البته مطمئن نیستم اما اگر پروژت فایل Global.asax نداره بهش اضافه کن.

همین فقط اضافه کنم

delphi77
دوشنبه 26 شهریور 1386, 15:11 عصر
بهروز قرمز درست شد ازت تشکر کردم

Behrouz_Rad
دوشنبه 26 شهریور 1386, 15:12 عصر
بهروز قرمز درست شد ازت تشکر کردم
به این میگن یه تجربه :D
قرمز چیه؟

Nightbat
دوشنبه 26 شهریور 1386, 15:45 عصر
به این میگن یه تجربه :D
قرمز چیه؟
چطور شد ؟؟ چرا درست شد. مگه global.asax بدون کد کاری می کنه ؟

Behrouz_Rad
دوشنبه 26 شهریور 1386, 16:19 عصر
چطور شد ؟؟ چرا درست شد. مگه global.asax بدون کد کاری می کنه ؟
خوب دیگه... اینم از ریزه کاری های ASP.NET هست!
آره خوب... در پشت پرده کارهای زیادی انجام میشه... کافیه در مورد ASP.NET Internals مطالعه کنی تا به قدرت خدا پی ببری! ;)
به Session در روال AcquireRequestState دسترسی پیدا میشه. پشت پرده ی این روال بدین گونه تعریف شده که Session ای که ایجاد میشه، بر روی Session قبلی Overwite بشه. البته این حالت برای برخی Provider های خاص رخ میده.
تو با اضافه کردن Global.asax به پروژه این روال رو Override می کنی و جلوی تحقق شرط پشت صحنش که مشخص کرده اگه این روال Override شده بود این کار رو نکن میگیری!
در نتیجه دنیا به کامت شیرین میشه ;)

موفق باشید.

web developer
دوشنبه 26 شهریور 1386, 21:12 عصر
قرمز چیه؟


احتمالا RAD رو Red خونده بنده خدا! :چشمک:

ولی جالبه نمی دونستم Global.asax خالی هم کار می کنه!

موفق باشید.

delphi77
سه شنبه 27 شهریور 1386, 09:57 صبح
به این میگن یه تجربه :D
قرمز چیه؟

اوه اوه اوه من اشتباهی rad را red خواندم با عرض معذرت از راهنمایی شما مجددا سپاسگزارم:خجالت: