PDA

View Full Version : آموزش: تشخیص هویت ساده



yuttrim20
یک شنبه 31 اردیبهشت 1391, 14:39 عصر
سلام به دوستای خوبم من برای قسمت login وب سایتم احتیاج به تشخیص هویت داشتم که مثلا اگر مدیر login کنه یا کاربر عادی، بتونه هر کدوم رو به صفحه مورد نظر هدایت کنه! خیلی جستجو کردم کد زیاد بود اما از اونجایی که خیلی حرفه ای بود من سر در نمی اوردم این شد که خودم کد رو نوشتم و میزارم اینجا تا دوستای تازه کار(مثل خودم) استفاده کنن!
باید به فرمتون دو تا textbox و یک button اضافه کنین روی button دابل کلیک کنین و کدد زیر رو بنویسین البته توی این کد لازمه که توی جدولی که اطلاعات کاربری رو ذخیره می کنین فیلدی به نام type داشته باشین که نوع هر کاربر رو ذخیره کنه.
کد به این صورت کار میکنه که مقدار دوتا textbox رو میگیره چک میکنه اگه type=2 به قسمت مدیریت و اگه 1 باشه به قسمت کاربری میره و اگر اطلاعات اشتباه وارد کنین پیام خطا میده!
شرمنده اگه خیلی توضیح دادم:لبخند:


protected void login_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection(Connection.GetConnection());
SqlCommand com = new SqlCommand("SELECT type FROM users WHERE(username='" + uname.Text + "' AND password='" + pass.Text + "')", conn);

conn.Open();
com.ExecuteNonQuery();
int num = 0;
try
{
num = Convert.ToInt32(com.ExecuteScalar());
}
catch { }
finally
{
conn.Close();
}
if (num == 0)
{
Response.Write("<script> alert('مجددا تلاش کنید')</script>");
uname.Text = "";
pass.Text = "";
}
else if (num == 1)
Response.Redirect("صفحه کاربر.aspx");
else if (num == 2)
Response.Redirect("صفحه مدیریت.aspx");

}

fakhravari
یک شنبه 31 اردیبهشت 1391, 15:47 عصر
اگر سایت کوچکی دارید میتونید با یه select ساده مدیر را از کاربر تشخیص دهید.
SqlConnection con = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = SqlOne;
cmd.Parameters.Add("@UserName", SqlDbType.NVarChar).Value = txtUserName.Text;
con.Open();

SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();

da.Fill(dt);
con.Close();

if (dt.Rows.Count > 0)
{
Session.Add("u", txtUserName.Text);
Response.Redirect("admin/admin.aspx");
}
else
{

}
protected void Page_Load(object sender, EventArgs e)
{
if (Session["u"] != null)
{
if (!IsPostBack)
{

}
}
else
{
Response.Redirect("../Default.aspx");
}


}

aminghaderi
یک شنبه 31 اردیبهشت 1391, 16:39 عصر
شرمنده اگه خیلی توضیح دادم:لبخند:
جای اون من خیلی ساده و مختصر می گم.
به نظر من شما برو ممبر شیپ دات نت رو یاد بگیر هم به نفعت هست و هم در همین پروژه می تونی ازش استفاده کنی وهم امن هست و ....
از همه مهمتر اینه که شما کل زمان یادگیریت فکر نکنم به 3 ساعت برسه و کل زمان کد نویست هم یک ساعت اگر به جزئیات پرداخته نشه (گرافیک و دیزاین و...) بعد شما بعد 4 ساعت از بالاترین امنیت موجود (در سطح خودتون) برخوردارید و ضامنش هم ماکروسافت هست.

yuttrim20
یک شنبه 31 اردیبهشت 1391, 18:31 عصر
از همین جا به همه دوستان بگم که مسلما ای این کدی که من نوشتم بهینه ترین و ساده ترین نیس، اما چون نیاز به دونستن مبحث خاصی نداشت برای من کافی بود!
البته به توصیه بقیه دوستان گوش میکنم و حتما سایر روش ها رو هم یاد میگیرم:چشمک:
مرسی از راهنمایی دوستان:قلب:

aliblue
یک شنبه 31 اردیبهشت 1391, 19:17 عصر
کسی منبع برای آموزش ممبر شیپ دات نت البته به زبان فارسی سراغ داره؟

yuttrim20
یک شنبه 31 اردیبهشت 1391, 21:47 عصر
کسی منبع برای آموزش ممبر شیپ دات نت البته به زبان فارسی سراغ داره؟

یه سری به اینجا (http://www.barnamenevis.org/showthread.php?225038-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%D9%8A-%D9%83%D9%88%DA%86%D9%83-%D8%A7%D9%85%D8%A7-%D9%85%D9%81%D9%8A%D8%AF&p=1000759#post1000759) بزنید خالی از لطف نیست