4.6 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	title, localeTitle
| title | localeTitle | 
|---|---|
| PHP Sessions | جلسات PHP | 
جلسات PHP
الجلسة هي طريقة لتخزين المعلومات (في المتغيرات) ليتم استخدامها عبر صفحات متعددة.
على عكس ملف تعريف الارتباط ، لا يتم تخزين المعلومات على جهاز الكمبيوتر الخاص بالمستخدم.
ما هي جلسة PHP؟
عند العمل مع أحد التطبيقات ، يمكنك فتحه ، وإجراء بعض التغييرات ، ثم إغلاقه. هذا يشبه إلى حد كبير الجلسة.
الكمبيوتر يعرف من أنت. يعرف متى تبدأ التطبيق وعند الانتهاء.
ولكن هناك مشكلة واحدة على الإنترنت: لا يعرف خادم الويب هويتك أو ما تفعله ، لأن عنوان HTTP لا يحتفظ بالحالة .
تعمل متغيرات جلسة العمل على حل هذه المشكلة من خلال تخزين معلومات المستخدم ليتم استخدامها عبر صفحات متعددة (مثل اسم المستخدم واللون المفضل ، وما إلى ذلك).
بشكل افتراضي ، تستمر متغيرات جلسة العمل حتى يقوم المستخدم بإغلاق المتصفح.
تحتوي متغيرات جلسة العمل على معلومات حول مستخدم واحد ، وهي متوفرة لجميع الصفحات في تطبيق واحد.
ملاحظة: إذا كنت بحاجة إلى تخزين دائم ، فقد ترغب في تخزين البيانات في قاعدة بيانات.
بدء دورة PHP
تبدأ الجلسة ببدء الجلسة () _ الوظيفة.
يتم تعيين متغيرات الجلسة مع المتغير العام PHP: $ _SESSION.
مثال:
`<?php // Start the session session_start(); ?>
<html> <?php // Set session variables $_SESSION["favcolor"] = "blue"; $_SESSION["favanimal"] = "dog"; echo "Session variables are set."; ?> </html> `ملاحظة: يجب أن تكون الدالة session_start () أول شيء في المستند. قبل أي علامات HTML.
انتاج:
يتم تعيين متغيرات الجلسة.
احصل على قيم متغيرات جلسة PHP
لاحظ أنه لا يتم تمرير متغيرات الجلسة بشكل فردي إلى كل صفحة جديدة ، بل يتم استرجاعها من الجلسة التي نفتحها في بداية كل صفحة (session_start ()).
لاحظ أيضًا أنه يتم تخزين جميع قيم متغير الجلسة في المتغير $ _SESSION العالمي:
مثال:
`<?php session_start(); ?>
<html> <?php // Echo session variables that were set on previous page echo "Favorite color is " . $_SESSION["favcolor"] . "."; echo "Favorite animal is " . $_SESSION["favanimal"] . "."; ?> </html> `
انتاج:
اللون المفضل باللون الأزرق.
الحيوان المفضل هو الكلب.
هناك طريقة أخرى لإظهار كافة قيم متغير جلسة العمل لجلسة مستخدم هي تشغيل التعليمة البرمجية التالية:
<?php  print_r($_SESSION);  ?>  
كيف يعمل؟
تحدد معظم الجلسات مفتاح المستخدم على كمبيوتر المستخدم الذي يبدو كالتالي: 765487cf34ert8dede5a562e4f3a7e12.
وبعد ذلك ، عندما يتم فتح جلسة على صفحة أخرى ، فإنه يقوم بمسح جهاز الكمبيوتر للحصول على مفتاح المستخدم.
إذا كان هناك تطابق ، فإنه يصل إلى تلك الجلسة ، إذا لم يكن كذلك ، فسيبدأ جلسة جديدة.
تعديل متغير الجلسة
لتغيير متغير جلسة ، ما عليك سوى الكتابة فوقه:
مثال:
`<?php session_start(); ?>
<html> <?php // to change a session variable, just overwrite it $_SESSION["favcolor"] = "pink"; print_r($_SESSION); ?> </html> `تدمير دورة PHP
لإزالة جميع متغيرات الجلسة العامة وتدمير الجلسة ، استخدم جلسة العمل unset () _ وتدمير الجلسة () _:
مثال:
`<?php session_start(); ?>
<html> <?php // remove all session variables session_unset(); // destroy the session session_destroy(); ?> </html> `