الكوكيز Cookies




يستخدم الكوكيز عادة لتحديد هوية المستخدم .




ماهو الكوكيز ؟


يستخدم الكوكيز عادة لتحديد هوية المستخدم . ان الكوكي cookie عبارة عن ملف صغير يتم ارساله من خلال السيرفر الى حاسوب المستخدم . و في كل مرة يتم طلب الصفحة من خلال المتصفح سيتم ارسال ملف الكوكي ايضاً . يمكنك إنشاء و استرجاع ملفات و قيم الكوكي .




كيف يمكن إنشاء cookie ؟


يستخدم الكود الوظيفي setcookie() لإنشاء كوكي .

ملاحظة : يجب وضع كود setcookie() قبل وسم <html> .

التركيبة


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

مثال 1

في المثال التالي سيتم إنشاء cookie اسمه user والقيمة هي Ahmad . كما سيتم تحديد انتهاء cookie بعد ساعة :
<?php
setcookie("user", "Ahmad", time()+3600);

?>

<html>

.....



ملاحظة : يتم ترميز قيمة cookie تلقائياً عند ارسال cookie كما يتم ترميزه تلقائياً عند استرجاعه ولتجنب ترميز الروابط URL يمكنك استخدام setrawcookie() عوضاً عنها .

مثال 2

يمكنك تحديد وقت انتهاء cookie بطريقة أخرى أيضاً . كما يمكن أن تكون أسهل عند استخدام الثواني :
<?php
$expire=time()+60*60*24*30;
setcookie("user", "Ahmad", $expire);

?>

<html>

.....



في المثال السابق تم تحديد انتهاء وقت الملف لشهر ( 60 ثا , 60 د , 24 سا , 30 يوم ) .




كيفية استرجاع قيمة Cookie ؟


يمكن استخدام المتغير $_COOKIE لاسترجاع قيمة cookie .

في المثال التالي تم استرجاع قيمة cookie المسماة user وعرضها في الصفحة :
<?php
// اظهار الكوكي

echo $_COOKIE["user"];

// طريقة أخرى لعرض جميع الوكيز

print_r($_COOKIE);

?>



تم استخدام isset() في المثال التالي لمعرفة فيما اذا تم ضبط cookie أم لا :
<html>
<body>
<?php
if (isset($_COOKIE["user"]))
echo "Welcome " . $_COOKIE["user"] . "!<br />";
else
echo "Welcome guest!<br />";
?>

</body>
</html>






كيف تحذف Cookie ؟


عند حذف cookie ينبغي التأكد بأن تاريخ الانتهاء هو في الماضي .

مثال عن حذف كوكي cookie
<?php
// set the expiration date to one hour ago
setcookie("user", "", time()-3600);

?>






ماذا لو كان المتصفح لا يدعم cookie ؟


اذا كنت تتعامل مع متصفحات لا تدعم cookie عندها يمكنك استخدام طرق أخرى لتمرير المعلومات من صفحة الى أخرى . إحدى هذه الطرق هي تمرير المعلومات من خلال النماذج forms ( تم شرح النماذج و المدخلات في دروس ماضية ) .

يمرر النموذج مدخلات المستخدم إلى الصفحة "welcome.php" عند ضغط المستخدم على زر الارسال :
<html>
<body>
<form action="welcome.php" method="post">
Name: <input type="text" name="name" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>

</body>
</html>



استرجاع القيم من المجلد welcome.php مثل :
<html>
<body>
Welcome <?php echo $_POST["name"]; ?>.<br />
You are <?php echo $_POST["age"]; ?> years old.

</body>
</html>






ليست هناك تعليقات:

إرسال تعليق