PDA

View Full Version : سوال: چگونگی مخفی کردن مطالب سایت برای کاربران غیرعضو



zahraabedi
شنبه 27 آبان 1391, 09:27 صبح
سلام.
دوستان من به راهنمایی شما احتیاج دارم.
میخوام سایتی طراحی کنم که برای بعضی قسمتها فقط کاربران عضو به اون دسترسی داشته باشندو کسانی که عضو نیستند مطالب برای آنها مخفی باشد.
ممنون میشم کمکم کنید.

rezayeman
شنبه 27 آبان 1391, 10:20 صبح
از membership در asp استفاده کنید. راحتتر از چیزی که فکر میکنید کارتونو راه میندازه

mhq1368
شنبه 27 آبان 1391, 10:31 صبح
سلام دوست عزیز

شما میتونید تو هر قسمتی که میخواید کاربر اون قسمت رو نبینه کد زیر رو بنویسید



Visible='<%# HttpContext.Current.Session["user"]!=null %>'


البته شما باید زمان ورود کاربر یه قسمت session مقدار user رو اضافه کنید
به شکل زیر


session.add("user","true")

saeed_sho
شنبه 27 آبان 1391, 19:01 عصر
راحت ترین راه استفاده ا کنترل loginView استفاده ازش خیلی راحته یه سرچ کن

zahraabedi
یک شنبه 28 آبان 1391, 12:27 عصر
من تا حالا از membership استفاده نکردم.میشه بیشتر توضیح بدید؟

zahraabedi
یک شنبه 28 آبان 1391, 12:30 عصر
سلام دوست عزیز

شما میتونید تو هر قسمتی که میخواید کاربر اون قسمت رو نبینه کد زیر رو بنویسید



Visible='<%# HttpContext.Current.Session["user"]!=null %>'


البته شما باید زمان ورود کاربر یه قسمت session مقدار user رو اضافه کنید
به شکل زیر


session.add("user","true")



یعنی اسم session رو user بذارم دیگه؟بجای مقدار true میشه مقدار دیگه ای قرار داد یا اینکه مقداردهی true عمل خاصی رو انجام میده؟

rezayeman
یک شنبه 28 آبان 1391, 12:35 عصر
توضیح membership

http://webdevelopers.mihanblog.com/post/133

mhq1368
یک شنبه 28 آبان 1391, 12:41 عصر
ببینید شما
باید اول کد زیر رو تو قسمتی که میخواین کاربر وارد سایت بشه بزاریدبه عنوان یه شرط بزارید بعد کد بالا رو میزارید تو قسمتی که میخواین

حالا شما میتونید این قسمت رو از کاربر مخفی کنید


کد زیر رو باید تو قسمت رویداد کلیک دکمه تون بزارید(login کاربر)



شرط بزارید که اگه یوزرنیم و رمز عبور درست بود کد رو اجرا کمه
Session.Add("user", "true");
Session.Add("name", TextBox1.Text);
Session.Add("uname", txtuser.Text);
Session.Add("img", img11);
Session.Add("name1", name);
Session.Add("family", family);
Session.Add("adr", adr);
Session.Add("email", email);
Session.Add("pas", txtpas.Text);
Response.Redirect("user_profile/change_certification.aspx");


کدزیر رو تو فرم لود صفحه masterpage بزارید


if (Session["user"] == null)
{
lbl1.Text = "خوش آمدید مهمان گرامی";
exit_btn.Visible = false;


}
else
{
lbl1.Text = "خوش آمدید " + Session["name"].ToString();
}


کد زیر رو هم تو قسمت html اونجایی که میخواین به کاربر غیر عضو نمایش نده بزارین
مثلا تو خصوصیات یه div


Visible='<%# HttpContext.Current.Session["user"]!=null %>'

zahraabedi
یک شنبه 28 آبان 1391, 19:44 عصر
ممنون .قسمت session مربوط به کاربر درست کار میکنه.اما در صفحه default همونطور که گفتین نوشتم:



<div Visible='<%# HttpContext.Current.Session["user"]!=null %>'>
In The Name Of God
</div>


اما کار نمیکنه.نیازی نیست namespace خاصی import بشه؟

mhq1368
یک شنبه 28 آبان 1391, 19:56 عصر
یعنی نشون میده؟

zahraabedi
یک شنبه 28 آبان 1391, 20:14 عصر
آره کاربری که وارد نشده میتونه in the name of god رو ببینه !!!
من اون کدی که در یکdiv گفتید بنویسم رو در بخش code behind نوشتم error زیر رو داره:
Only assignment, call, increment, decrement, and new object expressions can be used as a statement

mhq1368
یک شنبه 28 آبان 1391, 20:17 عصر
آره کاربری که وارد نشده میتونه in the name of god رو ببینه !!!
من اون کدی که در یکdiv گفتید بنویسم رو در بخش code behind نوشتم error زیر رو داره:
Only assignment, call, increment, decrement, and new object expressions can be used as a statement

خوب ببینید شما بیاین کدی که گفتم توی فرم لود مسترپیج بنویسید اون کد رو کپی کنید تو صفحه ای که آیتم in the name of god رو گذاشتین

zahraabedi
یک شنبه 28 آبان 1391, 20:21 عصر
همین کار رو انجام دادم.در فرم لود که گذاشتم اون error ای گفتم رو داره!

mhq1368
یک شنبه 28 آبان 1391, 20:24 عصر
حالا یه لحظه من براتون نمونه بزارم

fakhravari
یک شنبه 28 آبان 1391, 20:56 عصر
یه مثال ساده
<div runat="server" id="test">

هر چی می خوا باشه

</div>
test.Visible = false;

mhq1368
یک شنبه 28 آبان 1391, 21:08 عصر
بله این توری هم که آقای فخرآوری گفتن میشه
یعنی بعد از اون شرطی که بهتون گفتم باید خاصیت visible رو false یا true کنید

zahraabedi
یک شنبه 28 آبان 1391, 21:13 عصر
خیلی ممنون.درست شد :لبخندساده: