في تصحيح الأخطاء في البرنامج ، في بعض الأحيان أحتاج إلى معرفة عدد متغيرات الجلسة المستخدمة وما هي قيمتها؟ نظرًا لأن كائن الجلسة يوفر مجموعة تسمى المحتويات ، يمكننا تحقيق الهدف من خلال ... كل حلقة: Dim Strname ، Iloop ، Iloop
لكل strname في الجلسة
Response.write strname & " -" & session.contents (strname) و "<br>"
بشكل عام ، يمكن أن يعمل الرمز أعلاه بشكل جيد. ولكن عندما يكون متغير الجلسة كائنًا أو صفيفًا ، تكون نتائج الطباعة غير صحيحة. وبهذه الطريقة ، نقوم بتعديل الكود على النحو التالي: "انظر أولاً إلى عدد متغيرات الجلسة التي تستخدمها؟ Response.write" هناك "& session.contents.count & _ _
"متغيرات الجلسة <p>" "
قاتمة strname ، iloop
استخدم لكل جلسة فحص
إذا كان متغير الجلسة عبارة عن صفيف؟
إذا isarray (جلسة (strname) ثم
كل عنصر من عناصر طباعة دائرية
لـ Iloop = lbound (الجلسة (strname)) إلى Ubound (الجلسة (strname))
Response.write strname & "(" & Iloop & ") -" & _
جلسة (strname) (Iloop) و "<br>"
التالي
آخر
في حالات أخرى ، ما عليك سوى طباعة قيمة المتغير ببساطة
Response.write strname & " -" & session.contents (strname) و "<br>"
إنهاء إذا
في بعض الأحيان لا تستطيع متغيرات الجلسة التالية العمل ، لماذا؟ هناك العديد من الاحتمالات:
أولاً ، إذا كان العميل لا يسمح للعمل ملفات تعريف الارتباط ، فسوف تفشل الجلسة. لأن الجلسة تعتمد على ملفات تعريف الارتباط.
ثانياً ، الجلسة لديها إعداد وقت الفشل. الإعدادات الافتراضية 20 دقيقة. يمكنك تعديله على هذا النحو: Web Diretory-> Properties-> Dirtual Directory-> إعدادات التطبيق-> التكوين-> خيارات التطبيق-مهلة الجلسة
أو في ASP ، اكتب مثل هذا الرمز: session.timeout = 60.
ثالثًا ، ترتبط الجلسة بتطبيق الويب المحدد. إذا كان المستخدم يتصفح من /products/default.asp to /jobs/default.asp ، فقد يتسبب ذلك أيضًا في إعادة إنشاء الجلسة. كيفية مسح متغير الجلسة الذي لم يعد يحتاج ، ولكن لا يجعل الجلسة تفشل؟ في ASP3.0:
session.contents.remove "الاسم المتغير"
يمكنك إزالة متغير.
في ASP2.0:
تعيين الجلسة ("الاسم المتغير") = فارغ
يمكن مسح المتغيرات.
في ASP3.0 ،
Session.contents.remole
يمكنك مسح جميع متغيرات الجلسة والجلسة. ماذا يعني <٪@ enblySentientState = true ٪> في الجزء العلوي من صفحة ASP؟ يستخدم IIS تقنية تسمى تتبع الجلسة لضمان توفر كل متغير جلسة في كل صفحة. عندما يزور المستخدم صفحة معينة من ASP ، ستقوم IIS أولاً بإعداد كل متغير جلسة لهذه الصفحة ، والتي سيكون لها بالطبع تأثيرات أداء. (تكلفة استخدام متغير الجلسة مرتفعة دائمًا!)
إذا كان لديك 100 صفحة و 5 صفحات فقط يتم استخدامها للجلسة ، ثم للأداء العام ، فأنت بحاجة فقط إلى ضبطها على تلك الصفحات الخمسة:
<٪@ enlabesessionState = true ٪>
يتم تعيين صفحات أخرى على:
<٪@ enlabesessionState = false ٪>