آموزش کامل نحوه ایجاد کوکی در زبان برنامه نویسی PHP
کوکی یک قطعه کوچک از اطلاعات است که به عنوان یک فایل در مرورگر کاربر توسط وب سرور ذخیره می شود. پس از ایجاد، کوکی به عنوان اطلاعات هدر با هر درخواست HTTP به وب سرور ارسال می شود. شما می توانید از کوکی های سایت برای ذخیره هر داده ای استفاده کنید اما اندازه آن نباید از 1K (1024 بایت) تجاوز کند. ما در این مقاله به توضیح کامل نحوه ایجاد کوکی ها در PHP می پردازیم.
قبل از اینکه به نحوه ایجاد، به روز رسانی و حذف کوکی ها بپردازیم، بیایید چند مورد استفاده از کوکی ها را در دنیای واقعی بیاموزیم.
استفاده از کوکی ها در دنیای واقعی
- برای ذخیره اطلاعات کاربر مانند زمانی که وی بازدید کرده است، چه صفحاتی در وب سایت بازدید شده است و غیره، تا دفعه بعد که کاربر از وب سایت شما بازدید می کند، بتوانید تجربه کاربری بهتری را ارائه دهید.
- برای ذخیره اطلاعات اولیه وب سایت برای دانستن اینکه این اولین بازدید کاربر نیست.
- میتوانید از کوکیها برای ذخیره تعداد بازدیدها یا شمارنده بازدیدکنندگان استفاده کنید.
امیدوارم این توضیح کوتاه به شما ایده بدهد که چگونه می توانید از کوکی ها در وب اپلیکیشن خود استفاده کنید و اگر اپلیکیشن شما به زبان PHP نوشته شده است، کارایی و نحوه ایجاد کوکی در آن را بیاموزید.
انواع کوکی ها
دو نوع کوکی وجود دارد که عبارتند از:
- Session Cookie: این نوع کوکی ها موقتی هستند و به محض پایان جلسه یا بسته شدن مرورگر منقضی می شوند.
- Persistent Cookie: برای ماندگاری یک کوکی باید یک زمان انقضا برای آن ارائه کنیم. سپس کوکی فقط پس از مدت زمان انقضایی که برای آن تعیین شده منقضی می شود، تا آن زمان یک کوکی معتبر خواهد بود.
نحوه ایجاد کوکی در PHP
در زبان PHP می توانیم با استفاده از تابع setcookie() یک کوکی ایجاد/تنظیم کنیم. به همین سادگی زبان PHP بستری را برای شما فراهم کرده است تا بدون هیچ دردسری بتوانید کوکی ها را ایجاد و فعال کنید. در زیر دستور تابع را داریم:
setcookie(name, value, expire, path, domain, secure)
اولین آرگومان که نام کوکی را تعریف می کند اجباری است، بقیه آرگومان ها اختیاری هستند. بیایید بررسی کنیم که چه آرگومان های قابل مقداردهی هستند که می توانیم به تابع setcookie() برای تنظیم و ایجاد یک کوکی در زبان PHP ارائه کنیم.
آرگومان | کاربرد آن چیست؟ |
name | برای تعیین نام کوکی استفاده می شود. یک آرگومان اجباری است. نام کوکی باید یک رشته یا همان string باشد. |
value | برای ذخیره هر مقدار در کوکی استفاده می شود. به طور کلی به عنوان یک جفت با نام کوکی ذخیره می شود. به عنوان مثال، نام userid و مقدار 7007، این مقدار شناسه userid برای هر کاربر است. |
expire | این مقدار برای تنظیم زمان انقضای یک کوکی استفاده می شود. اگر مقداری ارائه نکنید، کوکی به عنوان یک کوکی session تلقی می شود و با بسته شدن مرورگر منقضی می شود. |
path | برای تنظیم URL وب در کوکی استفاده می شود. اگر تنظیم شود، کوکی فقط از آن URL قابل دسترسی خواهد بود. برای دسترسی به یک کوکی از طریق دامنه، ‘/’ را به عنوان مسیر کوکی تنظیم کنید. |
domain | دامنه وب اپلیکیشن شما. می توان از آن برای محدود کردن دسترسی به کوکی برای زیر دامنه ها استفاده کرد. به عنوان مثال، اگر مقدار دامنه را به عنوان wwww.studytonight.com تنظیم کنید، کوکی از آدرس blog.studytonight.com غیر قابل دسترسی خواهد بود. |
secure | اگر این مقدار را روی 1 تنظیم کنید، کوکی فقط از طریق اتصال HTTPS در دسترس خواهد بود و ارسال می شود. |
بنابراین اگر میخواهیم یک کوکی برای ذخیره نام کاربری که از وبسایت شما بازدید کرده است در PHP ایجاد کنیم و زمان انقضا یک هفته را تعیین کنیم، میتوانیم این کار را به این صورت انجام دهیم.
<?php
setcookie("username", "iamcookie", time()+60*60*24*7);
?>
برای دسترسی به یک کوکی ذخیره شده، از متغیر جهانی $_COOKIE استفاده می کنیم و می توانیم از روش isset() برای بررسی اینکه آیا کوکی تنظیم شده است یا خیر استفاده کنیم. بیایید یک مثال کامل داشته باشیم که در آن یک کوکی تنظیم می کنیم و سپس آن را بازیابی می کنیم تا مقدار آن در صفحه HTML نشان داده شود.
<?php
// set the cookie
setcookie("username", "iamabhishek", time()+60*60*24*7);
?>
<html>
<body>
<?php
// check if the cookie exists
if(isset($_COOKIE["username"]))
{
echo "Cookie set with value: ".$_COOKIE["username"];
}
else
{
echo "cookie not set!";
}
?>
</body>
</html>
بنابراین با ارائه نام کوکی در داخل پرانتز با متغیر جهانی $_COOKIE[] می توانیم به کوکی دسترسی پیدا کنیم. توجه: تابع setcookie() باید قبل از شروع تگ HTML () قرار گیرد.
به روز رسانی کوکی در PHP
برای به روز رسانی/تغییر یک کوکی، به سادگی آن را دوباره تنظیم کنید. به عنوان مثال، اگر بخواهیم نام کاربری ذخیره شده در کوکی ایجاد شده در بالا را به روز کنیم، می توانیم دوباره با استفاده از متد setcookie() این کار را انجام دهیم.
<?php
// updating the cookie
setcookie("username", "iamNOTabhishek", time()+60*60*24*7);
?>
<html>
<body>
<?php
// check if the cookie exists
if(isset($_COOKIE["username"]))
{
echo "Cookie set with value: ".$_COOKIE["username"];
}
else
{
echo "cookie not set!";
}
?>
</body>
</html>
با اینکار ما فقط مقدار نام کوکی را از iamabhishek به iamNOTabhishek به روز می کنیم.
حذف یک کوکی در PHP
برای حذف یک کوکی، باید کوکی را منقضی کنیم، این کار را می توان با به روز رسانی کوکی با استفاده از تابع setcookie() با تاریخ انقضا در گذشته انجام داد.
<?php
// updating the cookie
setcookie("username", "iamNOTabhishek", time() - 3600);
?>
<html>
<body>
<?php
echo "cookie username is deleted!";
?>
</body>
</html>
و با این کار، اکنون می دانیم که چگونه یک کوکی ایجاد کنیم، چگونه آن را به روز کنیم و چگونه زمانی که دیگر به آن نیاز نداریم، آن را حذف کنیم. امیدواریم این آموزش برای شما مفید واقع شود.
منبع: studytonight.com