تابع ( ) setcookie در PHP
تابع ( ) setcookie ، یک کوکی را به وسیله یک دستور HTTP به مرورگر کاربر ( client ) ارسال می کند . همانطور که می دانید کوکی یک متغیر است که برای نگهداری اطلاعات کاربر بر روی کامپیوتر وی استفاده می شود . هر بار که کاربر ، با همان مرورگر صفحه یا سایت مورد بحث را باز کند ، مقدار این کوکی فراخوانی شده و به صفحه ارجاع می شود . برای مثال رمز عبور یا نام کاربری در یک سایت از جمله کوکی های پر استفاده است .
اعضای شبکه مشاوران در حوزه «برنامهنویسی، وب و امنیت سایبری»
فرید تشیعی
متخصص، استراتژیست و مشاور سئو (SEO)
اگر در پیاده سازی، تعیین استراتژی، بوت کمپ یا مدیریت...
غزل شفیعی
مشاور برنامه نویسی PHP و توسعه لاراول
اگر به متخصصی باتجربه PHP و فریم ورک لاراول برای...
فاطمه جعفری
مشاور توسعه جاوا و اپلیکیشن
اگر به یک رهبر توانمند برای تیم توسعه نرم افزار...
طاهره حسن زاده
تحلیلگر داده و مشاور یادگیریماشین و دیپ لرنینگ
اگر به مهارت های یک تحلیلگر داده با تجربه در...
سپیده گونجی
مشاور SEO ،UI/UX و بازاریابی دیجیتال
اگر قصد دارید در دنیای دیجیتال فعالیت کرده و در...
ویدا رضایی
مشاور برنامه نویسی و طراحی وردپرس
اگر برای طراحی سایت وردپرسی خود به تجربیات و دانش...
نگار جنابی
مدیر پروژه، مشاور و مالک محصول پروژههای ICT
اگر در توسعه UI/UX و مدیریت پروژههای ICT خود به...
فاطمه مدیحی
مشاور برنامه نویسی جاوا اسکریپت، CSS و HTML
اگر به کمک شخصی با تجربه در برنامه نویسی Front-End...
فاطمه پورمحمد
مشاور برنامه نویسی، پایگاههای دادهای و دیتاساینس
اگر به یک تحلیلگر حرفهای داده، برنامهنویس مسلط به پایگاههای...
نیکا تهرانی
متخصص و مشاور سئو تکنیکال
اگر به استراتژیهای حرفهای سئو در موتور جستجوی گوگل از...
احسان مهدوی
مشاور شبکه، نرم افزار و هوش مصنوعی
اگر به دنبال رفع چالشهای شبکه، نرمافزار و امنیت فضای...
بنفشه سیدکباری
مشاور تحقیقات بازار، بازاریابی و فروش
اگر علاقمندید در تراز شرکتهای بزرگ و صاحبنام، بخش بازاریابی...
برای دریافت اطلاعات بیشتر راجع به کوکی ها و نحوه تعریف و استفاده از آنها ، به بخش تعریف و استفاده از کوکی ها در PHP بروید . نام کوکی به صورت اتوماتیک به متغیری به همان نام در صفحه اختصاص می یابد . برای مثال اگر کوکی به نام ” user ” در صفحه ایجاد شود ، در هنگام اجرای صفحه متغیری به نام ” user ” ساخته شده و با مقدار کوکی ، مقدار دهی خواهد شد. برای استفاده موثر از یک کوکی ، بایستی مقدار آن قبل از ایجاد صفحه ، به صفحه ارسال شود . بنابراین می توان از تابع ( ) setcookie که یک دستور HTTP است ، برای این کار استفاده نمود .
شکل کلی استفاده از این تابع به صورت زیر است :
syntax | setcookie( name , value , expire , path , domain ,secure ) ; |
syntax توضیح هر یک از موارد | |
توضیح | پارامتر |
پارامتر name تعیین کننده نام کوکی است . از این نام برای بازیابی و فراخوانی کوکی در سطح برنامه استفاده می شود . | name |
پارامتر value مقدار کوکی را تعیین می کند .این مقدار بر روی کامپیوتر ذخیره می شود . | value |
پارامتر expire تعیین کننده مدت زمان اعتبار کوکی ، بر حسب ثانیه است . پس از اتمام این مدت زمان ، کوکی از بین خواهد رفت . برای تعیین مدت زمان اعتبار کوکی ، معمولا از تابع ( ) time استفاده می شود . |
expire |
پارامتر domain ، دامنه ای که کوکی بر روی آن قابل دسترس است را تعیین می کند . برای مثال اگر مقدار آن ‘www.DeveloperStudio.ir’ تنظیم شود ، فقط در این دامنه قابل دسترسی است . تعیین این پارامتر اختیاری است . |
domain |
این پارامتر تعیین میکند که آیا کوکی فقط بایستی از طریق یک پروتکل امن HTTPS منتقل شود با خیر . مقدار پیش فرض این خاصیت FALSE بوده و تعیین آن نیز اختیاری است . |
secure |
نکته : برای خواندن مقدار یک کوکی از تابع ( نام کوکی ) COOKIE_$ استفاده می شود .
مثال های عملی :
در مثال های زیر ، به صورت عملی نحوه استفاده از تابع ( ) setcookie را آموزش داده ایم .
مثال 1 : در مثال اول ، نحوه تعریف یک کوکی را به صورت ساده نشان داده ایم :
مثال 1 | < ? php $value = “my cookie value”; |
// تعریف و ارسال یک کوکی ساده
setcookie(“TestCookie”,$value);
? >
<html>
<body>
…
مثال 2 : تعریف یک کوکی که پس از یک روز از بین می رود :
مثال 2 | < ? php $value = “my cookie value”; |
// تعریف و ارسال یک کوکی ساده با اعتبار 24 ساعت
setcookie(“TestCookie”,$value, time()+3600*24);
? >
<html>
<body>
…
مثال 3 : در مثال زیر مقدار کوکی که قبلا ایجاد کرده ایم را به روش های مختلفی در خروجی نمایش داده ایم :
مثال 3 | < ? php // چاپ مقدار کوکی در خروجی echo $_COOKIE[“TestCookie”]; echo “<br />”; echo $HTTP_COOKIE_VARS[“TestCookie”]; echo “<br />”; |
// چاپ تمام کوکی های صفحه
print_r($_COOKIE);
? >
<html>
<body>
…خروجیmy cookie value
my cookie value
Array ([TestCookie] => my cookie value)