‎‎كوكي هاPHP Cookies

Previous >    <Next  

‎يك كوكي اغلب براي شناسائي يك كاربر استفاده ميشود .كوكي فايل كوچكي است كه سرور آنرا در ‎،كامپيوتر كاربر قرار ميدهد .هر زماني كه همان كامپيوتر در خواست صفحه اي را توسط مرروگر دارد ‎كوكي آن هم ارسال ميشود .باphp ميتوان كوكي ايجاد وآنرا بازيابي كرد .

‎‎ايجاد كوكيCreate Cookies With PHP-‎

‎‎يك كوكي را ميتوان با تابع‎setcookie( )‎ ايجاد نمود فرمت كلي آن مطابق زيراست.

‎‎فرمت كلي كوكيSyntax -‎

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

‎‎فقط پارامترname ضروريست و مابقي اختيا ريست .

‎‎ايجاد وبازيابي كوكيPHP Create/Retrieve a Cookie -‎

‎براي بيان مطلب به بيك مثال مي پردازيم .در مثال زير يك كوكي بانام‎"user‎"‎و value برابر ‎‎"John Doe‎"‎‎و كوكي بعد از30 روز منقضي ميشود .دراينحالت زمان ‎لغو كوكي برابر‎ time()‎+ 86400*30 ‎ ‎خواهد شد .كراكتر‎"/‎"‎ ‎درpath بدين معني است كه كوكي در داخل وبسايت قرار ميگيرد ، در غيراينصورت ‎مسير دلخواه بايد انتحاب شود.

‎سپس با استفاده ازمتغير سوپرگلوبال‎$_COOKIE‎ آنرا باز يابي ميكنيم .از تابع ‎isset( ) ‎‎براي كنترل ‎تنظيم شدن آن استفاده ميشود.

‎‎مثال ـ ايجاد وبازيابي كوكي

 <?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>

‎‎نكته ـ تابع‎setcookie( ) ‎ بايد قبل ازتگhtml قرار داشته باشد.

‎نكته ـ مقادير كوكي هنگام ازسال بصورت خود كارURLencoded شده است .وهنگام دريافت ‎هم اتوماتيك رمزگشائي(decoded) ‎شده است .براي جلوگيري از رمز گذاري ‎از تابع‎setrawcookie( )‎ استفاده نمائيد.

‎‎اصلاح مقادير كوكيModify a Cookie Value -‎

‎اصلاح كوكي دقيقا مثل دوباره برقرار نمودن كوكي است .اين كار بوسيله تابع ‎setcookie()‎ ‎‎انجام ميشود .

‎‎مثال ـ اصلاح كوكي

 <?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> 

‎‎حذف كوكيDelete a Cookie -‎

‎براي حذف كوكي از تابع‎setcookie( ) ‎ استفاده ميشود .اگر زمان انقضاي كوكي ‎به زمان گذشته تغيير ‎كند ،كوكي حدف ميشود.

‎‎مثال ـ حذف كوكي

<?php 
// set the expiration date to one hour ago
setcookie("user", "", time() - 3600);
?>
<html>
<body>

<?php 
echo "Cookie 'user' is deleted.";
?>
</body>
</html>

‎‎كنترل فعال بودن كوكيCheck if Cookie are Enabled -‎

‎مثال ـ در مثال زير اسكريپت كوچكي وجود دارد كه فعال بودن كوكي را بررسي ميكند .در قسمت اول ‎كوكي با نام‎"test_cookie‎"‎ايجاد وسپس فعال بودن آن برسي ميشود .

<?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>

--(go to editor for change code and run)


Previous >    <Next