‎‎جلسات كاريPHP Sessions -‎

Previous >    <Next  

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

‎‎جلسه كارphp چيست‎?

‎يك برنامه معمولي را در نظر بگيريد .هنگام كاركردن باآن ، آنر بازميكنيد، بعضي تغييرات انجام ‎ميدهيدو درنهايت آنرا بپايا ن ميرسانيد،يا مي بنديد .اين مشابه جلسه كاريست .در اين حالت ‎كامپيوتر ميداند شما كه هستيد، كي كار راشروع كرديد وكي بپايان رسانديد .اما در اينترنت مشكلي ‎وجود دارد .سرور وب نميداند شما كه هستيدوچه كاري انجام ميدهيد، باين دليل كهHTTP address ‎وضعيت شمار رانگه نمي دارد.

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

‎بنابراين متغيرهاي جلسه كاري فقط اطلاعات يك كاربر را نگه داشته و در صفحه هاي مختلف يك application‎قابل دسترسي هستند .

‎‎نكته ـ اگر نيازمند حافظه دائمي هستيد، ميتوانيد اطلاعات رادربانك اطلاعاتي ذخيره نمائيد.

‎‎شروع جلسه كاريStart a PHP Session -‎

‎يك جلسه كاري با تابع‎session_start( )‎ شروع ميشود .همچنين متغير هاي جلسه ‎كاري با ‎$_SESSION‎‎بر قرار ميشوند.

‎مثال ـ در مثال زيريك صفحه جديد با‎"demo_session1.php‎"‎ايجاد ميشود .در اين صفحه يك جلسه ‎كاري شروع ودرآن متغيرهائي براي جلسه برقرارميشود.

<?php 
// Start the session
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php 
// Set session variables
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"] = "cat";
echo "Session variables are set.";
?>

</body>
</html> 

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

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

‎‎استفاده از متغيرجلسهGet PHP Session Vaibale value -‎

‎براي استفاده ازمتغيرهاي جلسه كه در صفحه قبلي برقرار شدند، صفحه جديد‎"demo_session2.php‎"‎ ‎ايجاد ميكنيم.

‎توجه كنيد كه متغير هاي جلسه مشابهsubmit فرم ارسالي نيستند، براي استفاده ازآنها در هر صفحه ‎جديد، بايد تابع‎session_start( )‎ در اين صفحه ابتداء اجرا شود . متغير هاي جلسه ‎در متغيرجهاني ‎ $_SESSION[ ]‎‎ ‎ذخيره شده اند.

‎‎مثال ـ استفاده از متغيرهاي جلسه

 <?php 
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php 
// Echo session variables that were set on previous page
echo "Favorite color is " . $_SESSION["favcolor"] . ".<br>";
echo "Favorite animal is " . $_SESSION["favanimal"] . ".";
?>

</body>
</html> 

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

‎مثال ـ روش ديگرنشان دادن همه متغيرهاي جلسه كاري با مقادير آنها در اسكريپت زير ‎كدشده است.

<?php 
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php 
print_r($_SESSION);
?>

</body>
</html> 

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

‎اكثر جلسات كاري به كليدي منتسب ميشوند.كليد چيزي مشابه 765487cf34ertBde5a562e4f3a7e12‎

‎كليد در كامپيوتر كابر ذخيره ميشود .با باز شدن صفحه جديد، وجودكليد مربوط كنترل ميشود .اگر ‎وجود داشته باشد، جلسه مربوطه فعال ، در غيراينصورت جلسه جديد شروع ميگردد.

‎‎تغير مقدار متغير جلسهModify a PHP Session Variable -‎

‎‎مثال ـ در مثال زيرمقدار متغير جلسه اصلاح گرديده است.

<?php 
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php 
// to change a session variable, just overwrite it
$_SESSION["favcolor"] = "yellow";
print_r($_SESSION);
?>

</body>
</html>

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

‎‎نابود كردن كردن جلسه كاريDestory a PHP Session -‎

‎حذف همه متغيرهاي گلوبال جلسه كاري با‎session_unset( )‎ وحذف جلسه كاري با تابع ‎session_destory( )‎‎انجام ميشود.

‎‎مثال ـ نابودن نمودن جلسه كاري

<?php 
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php 
// remove all session variables
session_unset();

// destroy the session
session_destroy();
?>

</body>
</html>  

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


Previous >    <Next