PDA

نسخه کامل مشاهده نسخه کامل : صفحه لاگين و کار با سشن ها



golbarg73
20-08-2011, 23:43
سلام دوستان عزيز من صفحه لاگين طراحي کردم ولي متاسفانه تو سشنها مشکل دلرم اگه ميشه راهنماييم کنيد.
index.html

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید




login.php


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

m.m.m5651
21-08-2011, 00:49
سلام. بهتره که این کار رو بکنید:
به جای این که به submit نام LoginBtn بدید، یه input type hidden بسازید و بعد به اون نام LoginBtn رو بدید. (منم خودم قبلا همین سوال رو داشتم که آقا امین حلش کردن.)

+



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و بعد اصلا تغییر پذیر result رو بردارید.
این کد، اولا که شما نباید اصل پسورد ها رو در دیتابیس ذخیره کنید. بلکه باید رمز ها رو به صورت رمز گذاری شده ذخیره کنید. فانکشن sha1 یکی از فانکشن هایی هستن که جلمه ها و عبارات رو رمز گذاری می کنن. مثلا هر کلمه رو به یه عدد دیگه تغییر میدن.
برای این نباید رمز ها در دیتابیس باشن که اگر دیتابیس -- شد نتونن به رمز ها درسترسی پیدا کنن!
+
قسمت if های یوزر وجود داره یا نه:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
بشه:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
+
شما نیاز دارید دو سشن یا کوکی ست کنید: یکی یوزر نیم و یکی رمز هش شده (sha1 شده.):
$_SESSION['LogedIn'] = true;
باید بشه:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
که در هر صفحه ای که نیاز داره کاربر لاگین کرده باشه، چک کنه که یوزر نیم و پسورد هش شده ی درون سشن مساوی هست با یوزرنیم و پسورد هش شده ی درون دیتابیس؟
اگر آره پس بتونه ببینه صفحه رو اگر نه نتونه.

======================
======================

خودمم خیلی تو این مسائل اولش گیج شده بودم. :( خیلی سخته این تیکه ها.


======================
======================
پس از ویرایش:
--------------
یادم رفت بگم که با استفاده از این تابع هم می تونید کوکی ای رو که آی دی سشن رو در بر می گیره رو یکم حق دسترسی و زمان معتبر بودنش رو دستکاری و تایین کنید:
set_cookie_params();
توی نت بگردید روش استفادش هست.

golbarg73
21-08-2011, 21:07
ممنون دوست عزيز و گلم که اينقدر با حوصله جواب منو دادي و وقت گذاشتي ولي فکر ميکنم چيزي نفهميدم.
کاش يکي پيدا ميشد همون کداي منو درست ميکرد و کامل و سالمشو واسم ميزاشت..:31:

MaSoUd555
21-08-2011, 21:22
ممنون دوست عزيز و گلم که اينقدر با حوصله جواب منو دادي و وقت گذاشتي ولي فکر ميکنم چيزي نفهميدم.
کاش يکي پيدا ميشد همون کداي منو درست ميکرد و کامل و سالمشو واسم ميزاشت..:31:

اینجوری که نمیشه اونوقت خودتون خسته میشین :31:
این ثابت شدست که گوگل بهترین دوست ماست :31:

دوست عزیز سعی کنید سرچ کنید و نمونه های زیادی رو ببینید، اون موقع کامل کد رو درک میکنید و فرقاشونو میفهمید

در مورد اشکال یابی کدها هم بگم کد ها کم کم و تکه تکه و مرحله به مرحله تست کنید تا بتونید مشکلتون رو بفهمید کجاست،مثلا توی یه پیج فقط سیشن رو امتحان کنید ببینید کار باهاش چطوریه،یک جا فقط با سلکت کردن از دیتابیس کار کنید تا کامل درکش کنید(حتما در موردش توی گوگل سرچ کنید (سعی کنید انگلیسی هم سرچ کنید))

موفق باشید

hasanak852
21-08-2011, 22:56
یکی از مشکلات هم گرامره کاره

مثلا شما بعد از چک کردن پسورد "{" آخرش رو نذاشتی ، یا اول ایف بعدی "}" رو نذاشتی!

پیشنهاد میکنم از نرم افزار زند استادیو (Zend Studio) استفاده کنین چون همونجا موقع تایپ برنامه این مشکلات رو نشون میده
یا نرم افزاری شبیه همون که این کارو بکنه


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

neopersia
21-08-2011, 23:00
ممنون دوست عزيز و گلم که اينقدر با حوصله جواب منو دادي و وقت گذاشتي ولي فکر ميکنم چيزي نفهميدم.
کاش يکي پيدا ميشد همون کداي منو درست ميکرد و کامل و سالمشو واسم ميزاشت..:31:

دقیقاً نظر من هم همینه که بهتره کدها رو جدا جدا و مرحله به مرحله تست کنید. چون اگر قرار باشه همه رو با هم و با تمام جزئیات یاد بگیرید مطمئناً گیج میشید و نمیتونید چیز زیادی یاد بگیرید

کد شما چند تا مشکل داره که باید اصلاح بشه. از تفاوت در بزرگی و کوچکی حروف گرفته تا تفاوت در نام فیلدها و کلیدهای متغیر پست در php، استفاده نکردن از آکولاد در شرط که باعث میشه در صورت درست بودن یا نبودن شرط مقدار مروبط به صحیح بودن شرط پرینت بشه و یکی دو مورد مشکل امنیتی
اگر الان یکی همه اینها رو با هم توضیح بده مطمئناً براتون گیج کننده میشه

m.m.m5651
22-08-2011, 02:32
من برای این تمام نکته ها رو گفتم برای اینکه خودمم واقعا اولش نمیدونستم چی تو نت بگردم، تو گوگل چی بزنم، آخه واقعا هیچی بلد نبودم و خیلی ها هم اصطلاحاتی می گفتن که من خوب واقعا معنیشون رو نمی فهمیدم. سعی کردم تو یه تاپیک تمام موارد در مورد همین موضوع رو بگم.

m.m.m5651
22-08-2011, 13:58
الان خوب مثلا نمیدونستن ایشون که امنیت سشن هاشون پایینه یا مثلا باید رمز رو هش کنن که بخوان در موردش تو نت بگردن.

golbarg73
24-08-2011, 22:23
ممنون دوستان راش انداختم