دروس PHP

PHP الرئيسية مقدمة PHP تثبيت PHP بناء جملة PHP تعليقات PHP متغيرات PHP PHP صدى / طباعة أنواع بيانات PHP سلاسل PHP أرقام PHP PHP الرياضيات ثوابت PHP مشغلي PHP PHP إذا ... آخر ... Elseif مفتاح PHP حلقات PHP وظائف PHP مصفوفات PHP PHP Superglobals PHP RegEx

نماذج PHP

معالجة نموذج PHP التحقق من صحة نموذج PHP نموذج PHP مطلوب نموذج PHP URL / البريد الإلكتروني اكتمل نموذج PHP

PHP متقدم

تاريخ ووقت PHP تضمين PHP معالجة ملفات PHP فتح / قراءة ملف PHP إنشاء / كتابة ملف PHP تحميل ملف PHP ملفات تعريف الارتباط PHP جلسات PHP مرشحات PHP مرشحات PHP متقدم وظائف رد الاتصال PHP PHP JSON استثناءات PHP

PHP OOP

PHP ما هو OOP فئات / كائنات PHP منشئ PHP مدمر PHP معدِّلات الوصول إلى PHP الوراثة PHP ثوابت PHP فئات مجردة PHP واجهات PHP سمات PHP طرق PHP الثابتة خصائص PHP الثابتة مساحات أسماء PHP PHP تكرارات

قاعدة بيانات MySQL

قاعدة بيانات MySQL اتصال MySQL إنشاء قاعدة بيانات MySQL إنشاء جدول MySQL MySQL إدراج البيانات MySQL الحصول على آخر معرف إدراج عدة MySQL تم تجهيز MySQL MySQL حدد البيانات MySQL أين ترتيب MySQL حسب MySQL حذف البيانات تحديث بيانات MySQL بيانات MySQL المحدودة

لغة PHP XML

موزعي PHP XML محلل PHP SimpleXML PHP SimpleXML - احصل على PHP XML Expat PHP XML DOM

PHP - أجاكس

مقدمة أجاكس أجاكس بي إتش بي قاعدة بيانات أجاكس AJAX XML بحث أجاكس لايف استطلاع أجاكس

أمثلة PHP

أمثلة PHP مترجم PHP اختبار PHP تمارين PHP شهادة PHP

مرجع PHP

نظرة عامة على PHP صفيف PHP تقويم PHP تاريخ PHP دليل PHP خطأ PHP استثناء PHP نظام ملفات PHP مرشح PHP PHP FTP PHP JSON كلمات PHP PHP Libxml PHP Mail PHP الرياضيات متفرقات PHP PHP MySQLi شبكة PHP التحكم في إخراج PHP PHP RegEx PHP SimpleXML PHP ستريم سلسلة PHP معالجة متغيرة PHP محلل PHP XML PHP Zip المناطق الزمنية PHP

جلسات PHP


الجلسة هي طريقة لتخزين المعلومات (في المتغيرات) لاستخدامها عبر صفحات متعددة.

على عكس ملفات تعريف الارتباط ، لا يتم تخزين المعلومات على كمبيوتر المستخدم.


ما هي جلسة PHP؟

عندما تعمل مع تطبيق ما ، تقوم بفتحه وإجراء بعض التغييرات ، ثم تقوم بإغلاقه. هذا يشبه إلى حد كبير الجلسة. الكمبيوتر يعرف من أنت. إنه يعرف متى تبدأ التطبيق ومتى تنتهي. ولكن هناك مشكلة واحدة على الإنترنت: خادم الويب لا يعرف من أنت أو ماذا تفعل ، لأن عنوان HTTP لا يحتفظ بالحالة.

تعمل متغيرات الجلسة على حل هذه المشكلة عن طريق تخزين معلومات المستخدم لاستخدامها عبر صفحات متعددة (مثل اسم المستخدم واللون المفضل وما إلى ذلك). بشكل افتراضي ، تستمر متغيرات الجلسة حتى يغلق المستخدم المتصفح.

لذا؛ تحتوي متغيرات الجلسة على معلومات حول مستخدم واحد ، وهي متاحة لجميع الصفحات في تطبيق واحد.

نصيحة: إذا كنت بحاجة إلى تخزين دائم ، فقد ترغب في تخزين البيانات في قاعدة بيانات .


ابدأ جلسة PHP

تبدأ جلسة مع session_start()الوظيفة.

يتم تعيين متغيرات الجلسة باستخدام المتغير العام PHP: $ _SESSION.

الآن ، لنقم بإنشاء صفحة جديدة تسمى "demo_session1.php". في هذه الصفحة ، نبدأ جلسة 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>

ملاحظة: يجبsession_start()أن تكون الوظيفة هي أول شيء في المستند. قبل أي علامات HTML.



احصل على القيم المتغيرة لجلسة PHP

بعد ذلك ، نقوم بإنشاء صفحة أخرى تسمى "demo_session2.php". من هذه الصفحة ، سنصل إلى معلومات الجلسة التي حددناها في الصفحة الأولى ("demo_session1.php").

لاحظ أن متغيرات الجلسة لا يتم تمريرها بشكل فردي إلى كل صفحة جديدة ، بل يتم استرجاعها من الجلسة التي نفتحها في بداية كل صفحة ( 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>

هناك طريقة أخرى لإظهار جميع قيم متغيرات الجلسة لجلسة مستخدم وهي تشغيل الكود التالي:

مثال

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

<?php
print_r($_SESSION);
?>

</body>
</html>

كيف يعمل؟ كيف تعرف أنه أنا؟

تقوم معظم الجلسات بتعيين مفتاح مستخدم على كمبيوتر المستخدم يبدو شيئًا كالتالي: 765487cf34ert8dede5a562e4f3a7e12. بعد ذلك ، عند فتح جلسة على صفحة أخرى ، فإنها تفحص الكمبيوتر بحثًا عن مفتاح مستخدم. إذا كان هناك تطابق ، فإنه يصل إلى تلك الجلسة ، وإذا لم يكن كذلك ، فإنه يبدأ جلسة جديدة.


تعديل متغير جلسة PHP

لتغيير متغير جلسة ، ما عليك سوى الكتابة فوقه:

مثال

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

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

</body>
</html>

تدمير جلسة PHP

لإزالة جميع متغيرات الجلسة العامة وتدمير الجلسة ، استخدم session_unset() و session_destroy():

مثال

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

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

// destroy the session
session_destroy();
?>

</body>
</html>

تمارين PHP

اختبر نفسك مع التمارين

ممارسه الرياضه:

قم بإنشاء متغير جلسة باسم "favcolor".

session_start();
["favcolor"] = "green";