روش به وجود آوردن تماس با استفاده از Session در PHP

Ocarina

Member
من میخوام یه تماس با استفاده از session درست کنم که کاربر با وارد کردن کلمه عبورش وارد سایت بشه
قبلاً همچین کاری رو با یه روش دیگه اجرا میکردم اما روال استفاده از session است...
کسی هست که بتون به من روش کار کردن با session رو توضیح بده؟
ممنون
 
آخرین ویرایش:

Ali_Farhadi

Member
سئوالتون خیلی کلیه.
پیشنهاد میکنم اول یک جستجو و مطالعه ای داشته باشین بعد اگر مشکل داشتین اینجا مطرح کنید. حتما پاسختون رو می گیرید.
 

Ocarina

Member
Ali_Farhadi گفت:
سئوالتون خیلی کلیه.
پیشنهاد میکنم اول یک جستجو و مطالعه ای داشته باشین بعد اگر مشکل داشتین اینجا مطرح کنید. حتما پاسختون رو می گیرید.
ممنون از راهنمایت اما من جستجو کردم یه چند تا مطلب بود نیگاه کردم اما به جواب نرسیدم
مشکل من نحوه درست کردن یک session است...
کارایش رو یاد دارم اما نمیدونم چطور اونو با کد نویسی بکار ببرم
اگه بشه با یه مثال ساده توضیح داد ممنون میشم(میدونم خیلی کلی دارم میگم و از حوصله تایپ بعضی ها خارجه اما کارم بدجوری گیره کمکم کنید .. )
 

Ali_Farhadi

Member
اینهم یک مثال ساده
کد:
session_start();
$_SESSION['username']='ali';

متغیر هایی که در session ذخیره میکنید. تا وقتی که کاربر صفحه مرورگر خود را نبسته باشد قابل استفاده در request های بعدی میباشد.
 

Ocarina

Member
ممنون
الان که مقدار دهی کردیم ...
چطوری چک کنیم کهsession مقدار داره و چطور اونو از بین ببریم
 

Ali_Farhadi

Member
ali_moradi گفت:
ممنون
الان که مقدار دهی کردیم ...
چطوری چک کنیم کهsession مقدار داره
کد:
session_start();
if (isset($_SESSION['username'])) echo"welcome"
else echo"you are not logged in";
ali_moradi گفت:
و چطور اونو از بین ببریم
کد:
session_start();
if (isset($_SESSION['username'])) unset($_SESSION['username']);
 

spsgorgan

Active Member
علی آقا میشه یه توضیحی نه چندان زیاد در مورد این مبحث بکنید . بنده علاقه دارم در این مورد بیشتر از اطلاعات شما فیض ببرم .
 

Ali_Farhadi

Member
spsgorgan گفت:
علی آقا میشه یه توضیحی نه چندان زیاد در مورد این مبحث بکنید . بنده علاقه دارم در این مورد بیشتر از اطلاعات شما فیض ببرم .

سلام
شما لطفا دارید. من که چیزی بلد نیستم. php رو با همین انجمن ها شروع کردم. اما در حد معلومات خودم، چشم.

کاربرد session مثل کوکیه با این تفاوت که اطلاعات ذخیره شده در session روی سرور ذخیره میشه نه روی کامپیوتر کلاینت.
برای استفاده صحیح از کوکی و session بهتره اول نحوه کار اونها رو دقیق بفهمیم.


نحوه کار کوکی به این صورته که وقتی شما یک کوکی set میکنید، از سرور یک دستور به مرورگر ارسال میشه مبنی بر اینکه یک کوکی با نام x و مقدار y ذخیره شود. حالا از این به بعد مادامی که کوکی expire نشده، مرورگر در تمام درخواست هایی که به همان سایت ارسال میکنه به سرور میگه که قبلا یک کوکی با نام x و مقدار y ذخیره شده بوده.
اما مشکل کوکی اینه که اطلاعات مهم رو نمیشه تو کوکی ذخیره کرد چون اولا اطلاعات روی کامپیوتر کلاینت ذخیره میشه ثانیا اطلاعات در بین راه قابل sniff شدن هستش.
برای حل این مشکل میشه از session استفاده کرد.
نحوه استفاده از session شباهت زیادی با کوکی داره با این تفاوت که همه اطلاعاتی رو که در session ذخیره میکنید روی سرور ذخیره میشه (به کلاینت ارسال نمیشه).
حالا این سئوال پیش میاد که سرور در درخواست های بعدی مرورگر چطور تشخیص میده که session مربوط به این درخواست کدام است. این کار به صورت پیش فرض توسط کوکی انجام میشه. به این صورت که سرور یک کد 128 بیتی منحصر به فرد که همان session_id هست برای هر session تولید میکنه و این کد رو در کوکی ذخیره میکنه و همچنین اطلاعات session که باید روی سرور ذخیره بشه رو به این کد نسبت میده. حالا سرور در درخواست های بعدی وقتی یک کد session_id رو از کوکی دریافت میکنه میره و اطلاعات مربوط به اون session_id رو در میاره و در اختیار برنامه نویس قرار میده.

نکته 1 : این امکان هم وجود داره که session_id بجای قرار گرفتن در کوکی به صورت پارامتر در انتهای تمام لینک ها قرار بگیره.

نکته 2 : اطلاعات session به صورت پیش فرض در شاخه tmp ذخیره میشه برای بالا بردن امنیت میشه این مسیر رو تغییر داد یا حتی اونها رو در دیتابیس ذخیره کرد.

نکته 3 : برای بالا بردن امنیت در برنامه میتونید ip رو هم چک کنید. چون session خودش اینکار رو انجام نمیده.


امیدوارم مفید بوده باشه :)
 

جدیدترین ارسال ها

بالا