ایجاد و استفاده از کوکی ( Cookie ) در PHP
کوکی یک قطعه اطلاعات است که سرور بر روی کامپیوتر کاربر ذخیره کرده و در مراجعات کاربر به همان سایت ، از آن اطلاعات برای شناسایی استفاده می کند . این اطلاعات معمولا راجع به شناسه کاربری ، رمز عبور ، تنظیمات یک کاربر بر روی سایت و … می باشد . زمانی که کاربر به وسیله کامپیوتر خود همان سایت را باز می کند ، مرورگر اطلاعات کوکی ها را به سرور ارسال می کند. از ( cookie ) برای بازیابی اطلاعات کاربری و یا سایر تنظیماتی که کاربر در یک سایت ایجاد کرده است ، در مراجعات بعدی به همان سایت استفاده می شود .
اعضای شبکه مشاوران در حوزه «برنامهنویسی، وب و امنیت سایبری»
فاطمه مدیحی
مشاور برنامه نویسی جاوا اسکریپت، CSS و HTML
اگر به کمک شخصی با تجربه در برنامه نویسی Front-End...
غزل شفیعی
مشاور برنامه نویسی PHP و توسعه لاراول
اگر به متخصصی باتجربه PHP و فریم ورک لاراول برای...
فاطمه جعفری
مشاور توسعه جاوا و اپلیکیشن
اگر به یک رهبر توانمند برای تیم توسعه نرم افزار...
بنفشه سیدکباری
مشاور تحقیقات بازار، بازاریابی و فروش
اگر علاقمندید در تراز شرکتهای بزرگ و صاحبنام، بخش بازاریابی...
طاهره حسن زاده
تحلیلگر داده و مشاور یادگیریماشین و دیپ لرنینگ
اگر به مهارت های یک تحلیلگر داده با تجربه در...
ویدا رضایی
مشاور برنامه نویسی و طراحی وردپرس
اگر برای طراحی سایت وردپرسی خود به تجربیات و دانش...
احسان مهدوی
مشاور شبکه، نرم افزار و هوش مصنوعی
اگر به دنبال رفع چالشهای شبکه، نرمافزار و امنیت فضای...
نیکا تهرانی
متخصص و مشاور سئو تکنیکال
اگر به استراتژیهای حرفهای سئو در موتور جستجوی گوگل از...
برای مثال فرض کنید که در یک سایت فروم عضو شده و یک رمز عبور و شناسه کاربری را برای خود تعیین کرده اید . هنگامی که برای اولین بار اطلاعات کاربری خود را در مرورگر وارد می کنید ، این اطلاعات در یک کوکی بر روی مرورگر کامپیوتر شما ذخیره می شود . هنگامی که در مراجعه بعدی به همان سایت می روید ، متوجه می شوید که مرورگر اطلاعات کاربری شما را وارد نموده و شما log in شده اید ، بدون اینکه خودتان کاری انجام داده باشید . در واقع مرورگر از کوکی برای ایجاد ، ذخیره و ارسال مجدد این اطلاعات به سرور استفاده کرده است .
مرورگر ها معمولا برای ایجاد و دخیره کوکی ها از کاربر سوال کرده و یا گزینه ای را جهت ایجاد آن قرار می دهند . پس از تایید کاربر اقدام به ایجاد و ذخیره (cookie) می نمایند . توسط زبان PHP شما به راحتی می توانید کوکی های خود را ایجاد کرده و مجددا آنها را دریافت و ارسال نمایید . در این بخش قصد داریم تا شما را با نحوه ایجاد و خواندن آن ها در زیان PHP آشنا نماییم .
ایجاد ( cookie ) در PHP :
از تابع ( ) setcookie برای ایجاد و ذخیره یک کوکی در زبان PHP استفاده می شود . برای ایجاد آن تعیین چند چیز مهم است :
- نام
- مقدار
- مدت زمان اعتبار *
* نکته : توجه داشته باشید که کوکی ها پس از یک مدت زمان تعیین شده ، اعتبار خود را از دست می دهند و باید دوباره فراخوانی شوند . در این حالت می گوییم ، کوکی expire شده است .
برای مثال فرض کنید در یک سایت login کرده اید. سپس کامپیوتر و مرورگر خود را برای مدتی رها می کنید (مرورگر و صفحه جاری را نمی بندید ) . پس از مراجعه دوباره متوجه می شوید، که مرورگر شما را logout کرده است و دوباره باید وارد شوید. دلیل این مسئله پایان یافتن مدت زمان اعتبار یک کوکی است .
حتما بخوانید : خواندن و حذف (cookie)
شکل کلی تعریف و ایجاد یک کوکی به وسیله تابع ( ) setcookie در PHP به صورت زیر است :
Syntax | < ? php setcookie ( name , value , expire , path , domain ) ; ? > |
syntax توضیح هر یک از موارد | |
توضیح | پارامتر |
پارامتر name تعیین کننده نام کوکی است که از این نام برای بازیابی و فراخوانی در سطح برنامه استفاده می شود . | name |
پارامتر value مقدار کوکی را تعیین می کند .این مقدار بر روی کامپیوتر ذخیره می شود . | value |
پارامتر expire تعیین کننده مدت زمان اعتبار کوکی ، بر حسب ثانیه است . پس از اتمام این مدت زمان از بین خواهد رفت . برای تعیین مدت زمان اعتبار کوکی ، معمولا از تابع ( ) time استفاده می شود . |
expire |
این پارامتر تعیین کننده مسیری بر روی سرور سایت است که کوکی در آن ، قابل دریافت و ذخیره است . برای مثال اگر مقدار آن برابر با ‘/’ تعیین شود ، در تمام سایت قابل دسترسی است . اما اگر روی مقدار /en/’ تنظیم شود ، فقط در دایرکتوری en در سایت قابل دسترسی است . تعیین این پارامتر اختیاری است . |
path |
پارامتر domain ، دامنه ای که کوکی بر روی آن قابل دسترس است را تعیین می کند . برای مثال اگر مقدار آن ‘www.DeveloperStudio.ir’ تنظیم شود ، فقط در این دامنه قابل دسترسی است . تعیین این پارامتر اختیاری است . |
domain |
مثال های عملی :
در مثال های زیر نحوه ایجاد چند (cookie) را با پارامترهای مختلف به شما نمایش داده ایم :
مثال 1 :در مثال زیر یک کوکی به نام info با مقدار Mehrdad را ایجاد کرده ایم ، که برای مدت یک ساعت ( 3600 ثانیه ) اعتبار دارد . به کد مثال دقت نمایید :
Example | < ? php setcookie ( ” info “, ” Mehrdad “, time( )+3600 ) ; ? > |
مثال 2 : در مثال دوم یک کوکی دیگر ایجاد کرده ایم ، که برای مدت یک سال اعتبار داشته ، ولی فقط در دامنه www.DeveloperStudio.ir اعتبار دارد :
Example | < ? php $ expire = time( ) + 60 * 60 * 24 * 30 ; setcookie ( ” info2 “, ” Developer “, $expire , ‘www.developerstudio.ir’ ) ; ? > |