چکیده این مطلب :

وقتی برای یکبار با نام کاربری خود در یک سایت وارد شوید برای بار بعد که دوباره به آن سایت سر می زنید متوجه می شوید سایت شما را می شناسد و نام شما را نشان میدهد. برای متوجه شدن روند این کار مقاله زیر را مطالعه کنید.

کوکی چیست؟

کوکی یک فایل کوچک است که سرور بر روی رایانه کاربر جاسازی می کند و کاربر را شناسایی می کند. هربار که یک کامپیوتر یک صفحه وب را با مرورگر درخواست می کند، کوکی را نیز ارسال می شود. با پی اچ پی، می توانید مقدار کوکی را ایجاد و ویرایش و حذف کنید.

ایجاد کوکی ها با پی اچ پی

کوکی با تابع setcookie () ایجاد می شود.

setcookie(name, value, expire, path, domain, secure, httponly);

فقط پارامتر نام باید حتما وجود داشته باشد. بقیه پارامترها اختیاری هستند.

ایجاد وبازیابی کوکی در php

مثال زیر یک کوکی به نام "user" با مقدار "John Doe" ایجاد می کند. کوکی بعد از 30 روز منقضی می شود . کوکی یک متغیر سراسری است بدین معنی که  که کوکی در کل وب سایت در دسترس است.

از تابع isset () برای پیدا کردن اینکه آیا کوکی تنظیم شده است استفاده کنیم:

<!DOCTYPE html>
<?php
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
 // 86400 = 1 day
?>
<html>
<body>
<?php
if(!isset($_COOKIE[$cookie_name])) {
     echo "Cookie named '" . $cookie_name . "' is not set!";
} else {     echo "Cookie '" . $cookie_name . "' is set!<br>";
     echo "Value is: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>
خروجی

Cookie named 'user' is not set!

تغییر مقدار کوکی

برای تغییر کوکی، فقط کوکی را با استفاده از عملکرد setcookie () تنظیم مجدد کنید:

<!DOCTYPE html>
<?php
$cookie_name = "user";
$cookie_value = "Alex Porter";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>

<?php
if(!isset($_COOKIE[$cookie_name])) {
     echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
     echo "Cookie '" . $cookie_name . "' is set!<br>";
     echo "Value is: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>
خروجی

Cookie 'user' is set!
Value is: John Doe

حذف کوکی

برای حذف کوکی، از تابع setcookie () با تاریخ انقضا در گذشته استفاده کنید:

<!DOCTYPE html>
<?php
// set the expiration date to one hour ago
setcookie("user", "", time() - 3600);
?>
<html>
<body>
<?php
echo "Cookie 'user' is deleted.";
?>
</body>
</html>
خروجی

Cookie 'user' is deleted.

بررسی فعال یا غیر فعال بودن کوکی

مثال زیر یک اسکریپت کوچک ایجاد می کند که آیا کوکی ها فعال می شوند. ابتدا سعی کنید کوکی تست را با تابع setcookie () ایجاد کنید، سپس متغیر آرایه $ _COOKIE را حساب کنید:

<!DOCTYPE html>
<?php
setcookie("test_cookie", "test", time() + 3600, '/');
?>
<html>
<body>
<?php
if(count($_COOKIE) > 0) {
    echo "Cookies are enabled.";
} else {
    echo "Cookies are disabled.";
}
?>
</body>
</html>

خروجی

بار اول که کد بالا را اجرا کنید پیغام Cookies are disabled. نشان داده می شود چون هنوز کوکی ایجاد نشده یا فایل حاوی کوکی روی سیستم شما جا سازی نشده ولی اگر یه بار دیگه اجرا کنید پیغام Cookies are enabled. نشان داده می شود چون کوکی ایجاد شده است.

  برای بهبود مقالات بعدی، لطفا نظرات و پیشنهادات ارزشمند خود را برای ما ارسال کنید.

نظر خود را ارسال کنید

پیشنهاد می دهیم این آموزش ها را نیز ببینید
بستن logo

ورود به ناحیه کاربری

هنوز در سایت عضو نشده ام!