الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في تسجيل الدخول وعند تسجيل الخروج وضغط تراجع عبر انترنت اكسبلورر

بدأه joo في 10 مايو 2008 · 4 رد · 2,594 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مشكلة في تسجيل الدخول وعند تسجيل الخروج وضغط تراجع عبر انترنت اكسبلورر

قمت بكتابة الكود التالي المختصر جدا و الذي يركز فقط على المشكلة التي اعاني منها:

فبعد أن يقوم المستخدم بتسجيل الدخول ,ويدخل للوحة التحكم , ومن ثم يقوم بعدها بتسجيل الخروج , يعود مرة ثانية لصفحة تسجيل الدخول , وهذا هو المطلوب , ولكن المشكلة تكمن فيما يلي : في حال قام المستخدم بضغط back عبر المستعرض انترنت اكسبلورر , فإنه يعود مرة ثانية للوحة التحكم ؟؟وطبعاً هذه العملية غير صحيحة وغير منطقية , مع العلم بأنني قد قرأت كل التوتوريال الخاص ب session واستخدمها في الكود تبعي , وفي صفحة الخروج اقوم بتدمير الجلسة

حتى انه بعد ان اقوم بتسجيل الدخول يقوم بارسال رسائل التحذير التالية

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\program files\wamp\www\testSession\processLogIn.php:1) in D:\program files\wamp\www\testSession\processLogIn.php on line 22

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\program files\wamp\www\testSession\processLogIn.php:1) in D:\program files\wamp\www\testSession\processLogIn.php on line 23

وعندما اقوم بتسجيل الخروج يعود لصفحة الدخول ولكن يعرض الرسالة التحذيرية التالية

Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in D:\program files\wamp\www\testSession\logOut.php on line 3

اعلم بانه يمكنني التخلص من الرسائل التحذيرية باستخدام @ ولكنني اريد معرفة نقطة الخلل بالموضوع

اذن :

المشاكل التي اريد حلها

1:ارغب عند محاولة الرجوع للصفحة السابقة باستخدام المستعرض , وبعد تسجيل الخروج , يجب الا تكون مثل هذه العملية متاحة

2:مشكلة الرسائل التحذيرية , ما سببها ؟؟وما حلها؟؟

وقد ارفقت الملفات التي تحوي مثال يركز على المشكلة التي اواجها مع هذه الرسالة

ولكم ولحلولكم واجوبتكم جزيل الشكر مسبقاً

testSession.rar

#2

السلام عليكم ..

بعد إلقاء نظرة سريعه على الكود . اول ما لفت نظري هو انك تستخدم include_once لعملية الـ redirect , كان بإمكانك إستخدام header , هذا سيجعل البرنامج اكثر منطقية .

ثانياً موضوع زر الخلف في المتصفح لا يشكل مشكلة , لانه حتى بعد تسجيل الخروج وانت في لوحه التحكم , والضغط على زر خلف , صحيح انك سوف تعود للوحه ولكنك عند محاولة عمل اي شئ في لوحه التحكم سوف لن تستطيع طالماً انك تستخدم isset مع متغير الجلسة , يمكنك حتى تجربة ذلك هنا في المنتدى ..

لا إله الإ الله وحده لا شريك له الملك وله الحمد يحي ويميت وهو على كل شئ قدير

------------------------------------------------------------------------------------------------

gazabigBanner.jpg

------------------------------------------------------------------------------------------------

#3

وعليكم السلام

شكرا كتير اخي محمد على النصيحة فيما يتعلق باستخدام header

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

وسلام

#4

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

<?php
	session_start();

	if (isset($_SESSION['db_is_logged_in'])) {
		unset($_SESSION['db_is_logged_in']);
	}

	header('Location: login.php');
?>
#5
اقتباس
بس يلي انا لاحظته : على سبيل المثال , لما بستخدم بريد غوغل , وبسجل خروج منه , وبعدين بكبس على التراجع باستخدام انترنت اكسبلورر , ما بيقبل يرجعني لبريدي إلا ما ارجع سجل دخول من اول وجديد , فأنا كان بدي حقق نفس الالية إذا امكن , لانها كتير منطقية ,فيا تر في ب بي اش بي هيك امكانية ؟؟

كلامك صحيح , ولكن اذا لاحظت جيداً فبريد جوجل هنا يستخدم الاجاكس وهذا فرق مهم , حيث انه في تطبيقات الاجاكس , لا توجد خاصية الـ bookmarking ..

اخي koko_the_boxer , الكود الذي كتبته موجود في مثاله ..

بالتوفيق ..

تم تعديل هذه المشاركة بواسطة محمد معاشر في 12 مايو 2008 في 16:32 — السبب: غلطه مطبعية

لا إله الإ الله وحده لا شريك له الملك وله الحمد يحي ويميت وهو على كل شئ قدير

------------------------------------------------------------------------------------------------

gazabigBanner.jpg

------------------------------------------------------------------------------------------------

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…