منتديات إجلجلي Agelgele
حللتم اهلا ونزلتم سهلا في مؤسسة فينكس تكنالوجي
منتديات إجلجلي Agelgele
حللتم اهلا ونزلتم سهلا في مؤسسة فينكس تكنالوجي
مؤسسة فينكس تكنالوجي ® Phoenix Technology
                      

العودة مؤسسة فينكس تكنالوجي ®



أهلا وسهلا بك في مؤسسة فينكس تكنالوجي ®
أهلا وسهلا بك زائرنا الكريم، إذا كانت هذه زيارتك الأولى للمنتدى، فيرجى التكرم بزيارة صفحة التعليمـــات، بالضغط هنا. كما يشرفنا أن تقوم بالتسجيل بالضغط هنا إذا رغبت بالمشاركة في المنتدى، أما إذا رغبت بقراءة المواضيع والإطلاع فتفضل بزيارة القسم الذي ترغب أدناه.


منتدي متخصص في صيانة الانضمة والشبكات المعلوماتية وتطوير المواقع والمنتديات . وافلام ومسلسلات عالمية مختلفة
 
الرئيسيةالبوابة رمضانيةأحدث الصورالتسجيلدخول

شاطر|


بيانات كاتب الموضوع
الدرس الثاني عشر: الجلسات (Sessions) بى اتش بى
كاتب الموضوعرسالة
المعلومات
الكاتب:
اللقب:

مستخدم مجتهد

الرتبه:
مستخدم مجتهد
الصورة الرمزية

énergie
البيانات
عدد المشاركات : 200

الإتصالات
الحالة:
وسائل الإتصال:

موضوع: الدرس الثاني عشر: الجلسات (Sessions) بى اتش بى الدرس الثاني عشر: الجلسات (Sessions)  بى اتش بى Empty16/11/2014, 18:17

اذا احتوت المشاركة صورا - قم بالضغط عليها لعرضها بحجمها الطبيعي




الدرس الثاني عشر: الجلسات (Sessions)
عندما تزور موقعاً فأنت تفعل أشياء مختلفة، تنتقل من صفحة لأخرى وربما تضع معلومات في نموذج أو تشتري منتجاً.
كمطور مواقع مثل هذه المعلومات لها أهمية كبيرة لتوفير حلول ناجحة للويب.
افترض مثلاً أنك تطور موقعاً يحوي بضع صفحات محمية باسم وكلمة سر، لكي تكون الحماية فعالة يجب أن تتمكن الصفحات المحمية بكلمة السر من الوصول إلى معلومات حول إمكانية دخول المستخدم في وقت سابق، بمعنى آخر يجب على الصفحة أن تتذكر ما فعله المستخدم سابقاً.
هذا بالضبط ما يدور حوله هذا الدرس، كيف يمكنك استخدام الجلسات في PHP لحفظ واسترجاع المعلومات أثناء زيارة المستخدم لموقعك.

الجلسات

أمر الدرس الثاني عشر: الجلسات (Sessions)  بى اتش بى Icon.newwindowsession في PHP يسمح لك بإدارة المعلومات حول جلسة المستخدم، يمكنك كتابة تطبيقات ذكية يمكنها معرفة المستخدم وجمع معلومات حوله.
الجلسة يمكن أن تبدأ بطرق مختلفة، لن نشرح التفاصيل التقنية هنا لكن سنركز على حالة حيث الجلسة تبدأ بحفظ قيمة، الجلسة تبدأ وتنتهي إذا لم يطلب المستخدم أي صفحة خلال وقت محدد، (20 دقيقة هو المعيار)، بالطبع يمكنك أن تنهي الجلسة في برنامجك.
لنفترض أن 50 شخصاً يتصفحون نفس الموقع - متجر مثلاً - في نفس الوقت، أفضل وسيلة لحفظ معلومات ما قد تحويه سلة المشتريات لكل واحد منهم هي الجلسات، لكي نحدد كل زائر المزود يستخدم رقم تعريف محدد يحفظ في كوكيز (cookie)، الكوكيز هو ملف نصي صغير يحفظ في حاسوب المستخدم، (للمزيد حول الكوكيز اقرأ الدرس الثالث عشر)، لذلك الجلسات تتطلب دعم الكوكيز في متصفح الزائر.

مثال لاستخدام الجلسات

عندما تطلب هذه الصفحة ستحفظ الوقت الحالي في جلسة، فعلت ذلك لكي أوضح لك بالمثال كيف تعمل الجلسات.
سميت المتغير "StartTime" وحفظته بإضافة هذه الأسطر لبرنامج PHP:

session_start();
$_SESSION["StartTime"] = date("r");

?>


هكذا بدأنا جلسة، كما هو مذكور أعلاه كل جلسة لها رقم تعريف خاص بها في المزود.
الجلسة الخاصة بك رقم تعريفها: 1g6f5emjkovmp2lolqofklded3
في أي وقت، يمكنني أن أطلب "StartTime" من الجلسة بكتابة التالي:

session_start();
echo $_SESSION["StartTime"];

?>


والذي سيظهر لنا أن هذه الصفحة طلبت في هذا الوقت Sun, 16 Nov 2014 18:16:32 +0100 (بحسب ساعة المزود).
لكن ما هو مثير أن المعلومة ستبقى في الجلسة حتى لو تركت الصفحة، المعلومة ستلاحقك حتى تنتهي الجلسة.
تلقائياً الجلسة تدوم حتى يغلق الزائر المتصفح وهكذا تنتهي الجلسة تلقائياً، لكن إن أردت أن تنهي الجلسة يمكنك أن تفعل ذلك بهذه الطريقة:

session_destroy();

?>


لننظر في مثال آخر حيث الجلسات تستخدم: كلمات السر.

نظام دخول مع الجلسات

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


Login





Username:


Password:











بعد ذلك ننشأ ملف login.php.
في هذا الملف سنتأكد ما إذا أدخل المستخدم اسماً وكلمة سر صحيحين، في هذه الحالة نبدأ جلسة تقول بأن المستخدم سجل دخوله باسم وكلمة سر صحيحين.



Login





// Check if username and password are correct
if ($_POST["username"] == "php" && $_POST["password"] == "php") {

// If correct, we set the session to YES
session_start();
$_SESSION["Login"] = "YES";
echo "

You are now logged correctly in

";
echo "

Link to protected file

";

}
else {

// If not correct, we set the session to NO
session_start();
$_SESSION["Login"] = "NO";
echo "

You are NOT logged correctly in

";
echo "

Link to protected file

";

}

?>






في الملفات المحمية نريد أن نتأكد أن المستخدم سجل دخوله بشكل صحيح، في حال لم ينجز ذلك المستخدم سيعود إلى نموذج الدخول، هكذا تحمي الصفحات:

// Start up your PHP Session
session_start();

// If the user is not logged in send him/her to the login form
if ($_SESSION["Login"] != "YES") {
header("Location: form.php");
}

?>



Login



This document is protected



You can only see it if you are logged in.






الدرس الثاني عشر: الجلسات (Sessions)  بى اتش بى Icon.exampleاختبر نظام الدخول
الآن نحن نعرف أمر الجلسات، في الدرس التالي سنعمل في نفس المساحة لكن سنلقي نظرة مقربة أكثر على الكوكيز.















 الموضوع الأصلي : الدرس الثاني عشر: الجلسات (Sessions) بى اتش بى // المصدر : منتديات إجلجلي Agelgele // الكاتب:énergie


énergie ; توقيع العضو




المعلومات
الكاتب:
اللقب:
مؤسس الموقع
الرتبه:
مؤسس الموقع
الصورة الرمزية

Ǥlamorous
البيانات
رسالة SMS : الحمد لله علي كل حال
ذكر
الجمهورية الجزائرية الديموقراطية الشعبية
العمر : 32
عدد المشاركات : 1609

الإتصالات
الحالة:
وسائل الإتصال:
http://www.altwer.com

موضوع: رد: الدرس الثاني عشر: الجلسات (Sessions) بى اتش بى الدرس الثاني عشر: الجلسات (Sessions)  بى اتش بى Empty2/12/2014, 19:08

اذا احتوت المشاركة صورا - قم بالضغط عليها لعرضها بحجمها الطبيعي




جزاك الله كل خيرا علي الموضوع
المفيد والرقي















 الموضوع الأصلي : الدرس الثاني عشر: الجلسات (Sessions) بى اتش بى // المصدر : منتديات إجلجلي Agelgele // الكاتب:Ǥlamorous


Ǥlamorous ; توقيع العضو




الدرس الثاني عشر: الجلسات (Sessions) بى اتش بى

استعرض الموضوع التالي استعرض الموضوع السابق الرجوع الى أعلى الصفحة

مواضيع مماثلة

» الدرس الثاني: ما هي HTML؟
» الدرس الثاني عشر: التصميم (CSS) للغة HTML
» الدرس الثاني: كتابة اول برنامج بلغة جافا
» الدرس 1: ما هي لغة PHP
» الدرس 4: الخطوط CSS



الــرد الســـريـع
..
الرد السريع
هام جداً: قوانين المساهمة في المواضيع. انقر هنا للمعاينة



●[ جميع حقوق النشر للمواضيع الحصرية محفوظة © phoenix™ 2015 ]●
●[ جميع المواضيع تعبر عن رؤية صاحبها ولا تمت للإدارة بصلة ]●

تحويل وبرمجة الرسام