SlideShare a Scribd company logo
1 of 32
‫الخامسة‬ ‫الوحدة‬
‫باستخدام‬ ‫الخادم‬ ‫برمجية‬ASP
‫صفحات‬ASP
‫إن‬‫المصطلح‬ASP‫هو‬‫اختصار‬‫لـ‬Active Server Pages‫أي‬‫صفحات‬
‫الخادم‬‫النشطة‬.
‫تعتبر‬‫تقنية‬‫مطورة‬‫من‬‫قبل‬‫شركة‬‫ميكروسوفت‬‫بهدف‬‫برمجة‬‫الخادم‬
‫باستخدام‬‫لغات‬‫سكريبت‬‫مثل‬VBScript‫أو‬JavaScript.
‫تشبه‬‫صفحات‬‫الـ‬ASP‫صفحات‬‫الويب‬html.‫حيث‬‫إنها‬‫قد‬‫تحتوي‬
‫على‬‫وسوم‬html‫و‬XML‫ومخطوطات‬‫برمجية‬‫خاصة‬‫بالمخدوم‬.
‫تحتوي‬‫صفحات‬ASP‫على‬‫مخطوطات‬‫برمجية‬‫تنفذ‬‫على‬‫الخادم‬
Server‫قبل‬‫أن‬‫ترسل‬‫الصفحة‬‫بما‬‫تحوي‬‫إلى‬‫متصفح‬‫الانترنت‬
Browser‫أو‬‫المخدوم‬Client
‫ترسل‬‫الصفحة‬‫بعد‬‫استبدال‬‫المخطوط‬‫البرمجي‬‫الخاص‬‫بالخادم‬
‫بنتيجة‬‫تنفيذه‬‫إلى‬‫متصفح‬‫الإنترنت‬‫كأي‬‫صفحة‬html‫اعتيادية‬.
‫لغ‬ ‫باستخدام‬ ‫الخادم‬ ‫برمجة‬ ‫استخدام‬ ‫فوائد‬‫ة‬
ASP ‫نستطيع‬‫برمجة‬‫الخادم‬‫بحيث‬‫يستجيب‬‫لاستفسارات‬‫المس‬‫تخدم‬
‫المرسلة‬‫من‬‫خلال‬‫نماذج‬(html Forms).
‫توفر‬‫صفحات‬ASP‫بعدا‬‫آخر‬‫للحصول‬‫على‬‫صفحات‬‫ويب‬‫ديناميك‬‫ية‬
‫قد‬‫تتغير‬‫بتغير‬‫الوقت‬‫أو‬‫البيانات‬.
‫إن‬‫المستخدم‬‫يحصل‬‫على‬‫نتيجة‬‫تنفيذ‬‫المخطوط‬‫البرمجي‬(‫ل‬‫ا‬
‫يستطيع‬‫مشاهدة‬‫المخطوط‬‫البرمجي‬‫أو‬‫التعديل‬‫عليه‬)،‫مما‬‫يحاف‬‫ظ‬
‫على‬‫سرية‬‫المخطوط‬‫البرمجي‬‫والطريقة‬‫التي‬‫يعمل‬‫بها‬‫ويتعام‬‫ل‬
‫بها‬‫مع‬‫متطلبات‬،‫المستخدمين‬‫وهذا‬‫يوفر‬‫مزيدا‬‫من‬‫الأمان‬‫والس‬‫رية‬.
‫باستخدام‬‫صفحات‬‫الـ‬ASP‫نستطيع‬‫برمجة‬‫الخادم‬‫بحيث‬‫يستجيب‬
‫للاحتياجات‬‫الخاصة‬‫بكل‬‫مستخدم‬.
‫وكنتيجة‬‫مباشرة‬‫للنقطة‬‫السابقة‬‫فإننا‬‫نقلل‬‫من‬‫العبء‬(Load)‫على‬‫شبكة‬
‫الإنترنت‬.
‫لصفحة‬ ‫مثال‬ASP‫رسالة‬ ‫لطباعة‬:
1. <html>
2. <head>
3. </head>
4. <body>
5. <h3>Welcome dear reader</h3>
6. <%
7. response.write("<h1><b><u> We hope that you will find learning ASP
most enjoyable” </u></b></h1>" )
8. %>
9. <br>
10. <h3>have fun</h3>
11. </body>
12. </html>
‫تنزيل‬Internet Information Services
‫لكي‬‫تستطيع‬‫تنفيذ‬‫صفحات‬ASP‫و‬‫تنفيذها‬‫على‬‫جهازك‬‫يجب‬‫اتباع‬‫الآتي‬:
‫تنزيل‬‫ما‬‫يدعى‬‫ب‬INTERNET INFORMATION SERVICES‫وتعرف‬‫اختصارا‬
‫ب‬IIS(‫خدمات‬‫الانترنت‬‫المعلوماتية‬)‫وهي‬‫جزء‬‫من‬WINDOWS XP‫و‬
WINDOWS 2000.
‫ضع‬‫القرص‬‫المدمج‬‫الخاص‬‫بـ‬Windows XP‫في‬‫محرك‬‫الأقراص‬
‫اذهب‬‫إلى‬Control Panel‫من‬(start Settings)
‫اختر‬Add/Remove Programs
‫اختر‬Add/Remove Windows Components
‫اختر‬‫من‬‫صندوق‬‫الحوار‬Internet Information Services
‫أنقر‬OK
‫تنزيل‬Internet information services...‫تكملة‬
‫ستجد‬‫مجلدا‬ ‫أن‬)Folder)‫اسمه‬ ‫جديدا‬Inetpub‫في‬ ‫ظهر‬
‫ف‬ ‫مجلدا‬ ‫ستجد‬ ‫المجلد‬ ‫هذا‬ ‫فتح‬ ‫وعند‬ ‫الصلبة‬ ‫الأقراص‬ ‫محرك‬‫رعيا‬
‫اسمه‬ ‫داخله‬wwwroot.
‫يمكنك‬‫داخل‬ ‫جديد‬ ‫فرعي‬ ‫مجلد‬ ‫أي‬ ‫إنشاء‬ ‫ذلك‬ ‫بعد‬wwwroot
‫مثل‬MyPages‫الـ‬ ‫صفحات‬ ‫وتوضع‬ ‫المثال‬ ‫سبيل‬ ‫على‬ASP
‫لـ‬ ‫صفحات‬ ‫لتنفيذ‬ ‫تكتبها‬ ‫التي‬Asp:‫المجلد‬ ‫داخل‬wwwroot‫أو‬
‫داخله‬ ‫إنشاؤه‬ ‫يتم‬ ‫فرعي‬ ‫مجلد‬ ‫أي‬.

‫تنزيل‬Internet information services...‫تكملة‬
‫تأكد‬‫أن‬ ‫من‬IIS‫يعمل‬:
‫وذلك‬‫إلى‬ ‫بالذهاب‬Control Panel‫إلى‬ ‫ثم‬Administrative Tools‫ومن‬
‫أنقر‬ ‫ثم‬Internet Information Services‫الظاهرة‬ ‫كتلك‬ ‫نافذة‬ ‫فتظهر‬
‫اختيار‬ ‫وبعد‬ ‫التالي‬ ‫الشكل‬ ‫في‬Default Web Site‫تشغيل‬ ‫نستطيع‬
‫الأيقونة‬ ‫على‬ ‫بالنقر‬ ‫الخادم‬‫الأيقونة‬ ‫على‬ ‫بالضغط‬ ‫وإيقافه‬
‫والمخد‬ ‫الخادم‬ ‫برمجة‬ ‫بين‬ ‫الاختلافات‬ ‫تلخيص‬‫وم‬
‫في‬‫برمجة‬‫المخدوم‬‫نستطيع‬‫استخدام‬‫نموذج‬‫كائن‬‫الأحداث‬Document Object Model،
‫لا‬‫يستطيع‬‫المخطوط‬‫البرمجي‬‫الخاص‬‫بالخادم‬‫أن‬‫يتعامل‬‫مع‬‫الأحداث‬‫الخاصة‬‫بالمتص‬‫فح‬‫مثل‬
‫النقر‬‫بالفأرة‬‫أو‬‫ضغط‬‫مفتاح‬‫على‬‫لوحة‬‫المفاتيح‬.
‫المخطوطات‬‫البرمجية‬‫الخاصة‬‫بالخادم‬‫تستطيع‬‫التعامل‬‫مع‬‫مكونات‬‫خادم‬‫الإنترنت‬‫مث‬‫ل‬:
•‫الملفات‬.
•‫قواعد‬‫البيانات‬.
‫تتلقى‬‫المخطوطات‬‫البرمجية‬‫الخاصة‬‫بالخادم‬‫البيانات‬‫من‬‫المخدوم‬‫عن‬‫طريق‬‫بروت‬‫وكول‬
HTTP.
‫ملاحظة‬:
‫نستطيع‬،‫استخدام‬‫لغتي‬VBScript‫أو‬JavaScript‫في‬‫برمجة‬‫الخادم‬‫ولكن‬‫لغة‬VBScript‫هي‬
‫اللغة‬‫التلقائية‬.
‫بمعنى‬‫لغة‬ ‫فإن‬ ‫أخرى‬ ‫لغة‬ ‫اسم‬ ‫بتحديد‬ ‫تقم‬ ‫لم‬ ‫إذا‬VBScript‫تستخدم‬ ‫التي‬ ‫هي‬.
‫مثال‬:‫تراكيب‬ ‫استخدام‬‫الدوران‬
‫هامة‬ ‫ملاحظة‬:
‫لا‬‫يظهر‬‫المخطوط‬‫البرمجي‬‫الذي‬
‫شوهد‬‫على‬‫الخادم‬‫كما‬‫ذكرنا‬‫سباقا‬
‫والشكل‬‫التالي‬‫هو‬‫الذي‬‫يظهر‬‫على‬
‫المخدوم‬‫في‬‫مستكشف‬‫الإنترنت‬‫من‬
‫خلال‬‫القائمة‬View‫ثم‬Source.
‫يوضح‬‫هذا‬‫المثال‬‫كيفية‬‫استخدام‬‫أكثر‬‫من‬script‫خطي‬‫في‬‫صفحة‬ASP‫واحدة‬.
‫المخطوط‬‫البرمجي‬‫في‬‫الشكل‬‫التالي‬‫يطبع‬‫الأعداد‬‫من‬1‫إلى‬10‫مع‬‫رسالة‬‫قصيرة‬
‫توضح‬‫نوع‬‫العدد‬‫فرديا‬‫أم‬‫زوجيا‬.‫ويبين‬‫الشكل‬‫التالي‬‫الصفحة‬‫المرسلة‬‫من‬‫الخ‬‫ادم‬‫إلى‬
‫المخدوم‬‫عند‬‫زيارة‬‫هذه‬‫الصفحة‬
‫المحلية‬ ‫المتغيرات‬‫والعامة‬
‫هنالك‬‫صفحات‬ ‫في‬ ‫المتغيرات‬ ‫من‬ ‫نوعان‬ASP:
-‫محلي‬Local‫وهو‬‫معين‬ ‫إجراء‬ ‫داخل‬ ‫يعرف‬ ‫الذي‬
-‫عام‬Global‫إجراء‬ ‫أي‬ ‫خارج‬ ‫يعرف‬ ‫الذي‬ ‫المتغير‬ ‫وهو‬.
‫لا‬‫داخل‬ ‫برمجي‬ ‫مخطوط‬ ‫خلال‬ ‫من‬ ‫إلا‬ ‫المحلي‬ ‫المتغير‬ ‫مع‬ ‫التعامل‬ ‫يمكن‬
،‫داخله‬ ‫عرف‬ ‫الذي‬ ‫الإجراء‬
‫يمكن‬‫الصفحة‬ ‫في‬ ‫برمجي‬ ‫مخطوط‬ ‫أي‬ ‫خلال‬ ‫من‬ ‫العام‬ ‫المتغير‬ ‫مع‬ ‫التعامل‬.
‫مثال‬:
‫صفحة‬ ‫التالي‬ ‫الشكل‬ ‫في‬ ‫يظهر‬ASP‫متغيرين‬ ‫تعرف‬Address‫متغير‬ ‫وهو‬
‫الإجراء‬ ‫داخل‬ ‫معرف‬ ‫محلي‬LocalVar‫العام‬ ‫والمتغير‬Name.‫عزيزي‬ ‫لاحظ‬
‫كيف‬ ‫الطالب‬‫المتغير‬ ‫قيمة‬ ‫إلى‬ ‫الوصول‬ ‫استطعنا‬Name‫من‬ ‫أكثر‬ ‫خلال‬ ‫من‬
‫الصفحة‬ ‫نفس‬ ‫في‬ ‫برمجي‬ ‫مخطوط‬.‫المتغير‬ ‫مع‬ ‫ذلك‬ ‫نستطع‬ ‫لم‬ ‫ولكن‬
Address.‫الثاني‬ ‫الشكل‬ ‫وبين‬‫الصفحة‬ ‫هذه‬ ‫زيارة‬ ‫نتيجة‬.
‫النشطة‬ ‫الخادم‬ ‫صفحات‬ ‫كائنات‬ ‫نموذج‬:
‫تتيح‬‫لنا‬‫لغة‬ASP‫استخدام‬‫العديد‬‫من‬‫الكائنات‬‫للتحكم‬‫بوظائف‬‫الخادم‬
‫وأخرى‬‫لإدارة‬‫عملية‬‫الاتصال‬‫بين‬‫الخادم‬‫والمخدوم‬.
‫استخدم‬‫الكائن‬Response(‫الاجابة‬)‫الخادم‬ ‫من‬ ‫المرسلة‬ ‫الصفحة‬ ‫ويمثل‬
‫الاجراء‬ ‫خلال‬ ‫من‬ ‫واستخدم‬ ‫المخدوم‬ ‫إلى‬write.
‫الكائن‬Request(‫الطلب‬:)‫نم‬ ‫خلال‬ ‫من‬ ‫البيانات‬ ‫لإرسال‬ ‫يستخدم‬ ‫والذي‬‫اذج‬
html‫الخادم‬ ‫إلى‬ ‫المخدوم‬ ‫من‬
‫نماذج‬ ‫معالجة‬HTML:
‫نماذج‬ ‫تستخدم‬html forms‫المخدوم‬ ‫من‬ ‫البيانات‬ ‫إرسال‬ ‫في‬
‫الخادم‬ ‫إلى‬.
‫وهما‬ ‫البيانات‬ ‫لإرسال‬ ‫طريقتان‬ ‫هنالك‬get‫و‬post.
‫تحدد‬‫النمـوذج‬ ‫خاصية‬ ‫خلال‬ ‫من‬ ‫الطريقة‬Form Attribute
‫تدعى‬ ‫التي‬Method.
‫وتستخدم‬‫الخاصية‬Action‫الـ‬ ‫صفحة‬ ‫اسم‬ ‫لتحديد‬ASP‫التي‬
‫النموذج‬ ‫محتويات‬ ‫لها‬ ‫سترسل‬.
‫نماذج‬ ‫معالجة‬HTML:
‫مثال‬:‫في‬‫صفحتي‬ ‫سنكتب‬ ‫المثال‬ ‫هذا‬ASP :
‫الأولى‬‫اسمه‬ ‫إدخال‬ ‫منه‬ ‫يطلب‬ ‫للمستخدم‬ ‫نموذجا‬ ‫تعرض‬Name‫وعنوانه‬
Address‫زر‬ ‫على‬ ‫النقر‬ ‫وعند‬Submit‫الصفحة‬ ‫إلى‬ ‫البيانات‬ ‫ترسل‬
readMyName.asp،‫الخادم‬ ‫على‬ ‫الموجودة‬
‫لاحظ‬‫النموذج‬ ‫خاصيتي‬ ‫استخدمنا‬ ‫كيف‬method‫و‬action‫الجملة‬ ‫في‬:
<form method="get" action="readMyName.asp">
‫وهي‬ ‫البيانات‬ ‫إرسال‬ ‫طريقة‬ ‫لتحديد‬ ‫وذلك‬get‫الصفحة‬ ‫واسم‬ ‫المثال‬ ‫هذا‬ ‫في‬
‫الصفحة‬ ‫وهي‬ ‫البيانات‬ ‫لها‬ ‫سترسل‬ ‫التي‬readMyName.asp.
‫صفحة‬ ‫وتستخدم‬readMyName.asp‫المجموعة‬Collection‫تحمـل‬ ‫والتي‬
‫الاسم‬query String‫للكائن‬ ‫والتابعة‬Request‫لحقلي‬ ‫المدخلة‬ ‫القيم‬ ‫لتسترجع‬
‫الإدخال‬Name‫و‬Address.‫الجملة‬ ‫خلال‬ ‫من‬ ‫وذلك‬:
request.queryString("name")
request.queryString("address")
‫بأسلوب‬ ‫الخادم‬ ‫إلى‬ ‫البيانات‬ ‫ارسال‬ ‫في‬ ‫الفرق‬get & post
‫الخاد‬ ‫إلى‬ ‫البيانات‬ ‫لإرسال‬ ‫واحدا‬ ‫أسلوبا‬ ‫استخدم‬ ‫السابقة‬ ‫الأمثلة‬ ‫في‬‫وهو‬ ‫م‬
‫أسلوب‬get‫والذي‬‫للخاصية‬ ‫كقيمة‬ ‫يظهر‬Method‫في‬‫جملة‬form.
‫في‬‫مرئي‬ ‫بشكل‬ ‫البيانات‬ ‫ترسل‬ ‫الحالة‬ ‫هذه‬)‫رؤيت‬ ‫المستخدم‬ ‫يستطيع‬‫ه‬)‫إلى‬
‫الصفحة‬ ‫عنوان‬ ‫بعد‬ ‫الخادم‬.
‫فمثلا‬‫الاسم‬ ‫المستخدم‬ ‫أدخل‬ ‫إذا‬ ‫السابق‬ ‫مثالنا‬ ‫في‬Ali Ahmad‫والعنوان‬Al
Quds‫ثم‬‫الزر‬ ‫على‬ ‫نقر‬:Send Data To Server
‫فإن‬URL‫ك‬ ‫يظهر‬ ‫الإنترنت‬ ‫بمستكشف‬ ‫الخاص‬ ‫العنوان‬ ‫شريط‬ ‫في‬ ‫يظهر‬ ‫الذي‬‫يلي‬ ‫ما‬:
http://localhost/index.asp?name=Ali+Ahmad&address=Al+Quds
‫بأسلوب‬ ‫الخادم‬ ‫إلى‬ ‫البيانات‬ ‫ارسال‬ ‫في‬ ‫الفرق‬get & post
‫وهنالك‬‫أسلوب‬‫آخر‬‫لإرسال‬‫البيانات‬‫إلى‬‫الخادم‬Server‫وهو‬‫أسلوب‬post.
‫الذي‬‫لا‬‫يظهر‬‫البيانات‬‫كجزء‬‫من‬‫عنوان‬‫الصفحة‬
‫كما‬‫لا‬‫يضع‬‫قيدا‬‫على‬‫حجم‬‫البيانات‬‫المرسلة‬.
‫في‬‫حالة‬‫استخدام‬‫الأسلوب‬post‫في‬‫إرسال‬‫البيانات‬‫فإن‬:
‫المجموعة‬form‫الخاصة‬‫بالكائن‬Request‫تستخدم‬‫بدلا‬‫من‬
‫المجموعـة‬Query String
‫تعري‬ ‫ملفات‬ ‫باستخدام‬ ‫المستخدم‬ ‫على‬ ‫التعرف‬‫فية‬
‫غالبا‬‫ما‬‫يضع‬‫الخادم‬‫ملفا‬‫تعريفيا‬‫يسمى‬‫كوكي‬Cookie‫في‬‫مكان‬‫معين‬‫على‬‫المخدوم‬‫يحتوي‬‫على‬
‫معلومات‬‫تعريفية‬‫عن‬‫المستخدم‬.
‫يقوم‬‫مستكشف‬‫النوافذ‬‫بإرسال‬‫هذه‬‫المعلومات‬‫في‬‫كل‬‫مرة‬‫يطلب‬‫فيها‬‫صفحة‬‫جديدة‬‫من‬‫الخادم‬.‫وهذا‬
‫يمكن‬‫الخادم‬‫من‬‫التعرف‬‫على‬‫المستخدم‬‫والتعامل‬‫معه‬‫بصورة‬‫فردية‬.
‫على‬‫سبيل‬‫المثال‬‫قد‬‫يطبع‬‫رسالة‬‫ترحيبية‬‫يظهر‬‫فيها‬‫اسم‬‫المستخدم‬‫كما‬‫قد‬‫يقوم‬‫بعرض‬‫المعلومات‬
‫التي‬‫يعتقد‬‫أنها‬‫تهم‬‫هذا‬‫المستخدم‬‫أكثر‬‫من‬‫غيرها‬.‫مما‬‫قد‬‫يقلل‬‫العبء‬‫على‬‫الخادم‬‫وشبكات‬‫االتصال‬
‫بشكل‬‫عام‬.
‫تعريفي‬ ‫ملف‬ ‫وضع‬cookie‫المخدوم‬ ‫على‬
‫تعريفي‬ ‫ملف‬ ‫ولوضع‬cookie‫التعليمة‬ ‫نستعمل‬ ‫فإننا‬ ‫المخدوم‬ ‫على‬
Response.Cookies
‫اسمه‬ ‫بشخص‬ ‫الخاص‬ ‫المخدوم‬ ‫على‬ ‫تعريفي‬ ‫ملف‬ ‫لوضع‬"Ahmed Ali"‫ملفا‬ ‫ننشئ‬ ‫أن‬ ‫نستطيع‬
ً‫ا‬‫تعريفي‬(Cookie)‫االسم‬ ‫يحمل‬ ‫المخدوم‬ ‫على‬yourName‫بواسطة‬‫الجملة‬
Response.Cookies("yourName")="Ahmed Ali"
‫الخاصية‬ ‫باستخدام‬ ‫التعريفي‬ ‫الملف‬ ‫مفعول‬ ‫بعده‬ ‫ينتهي‬ ‫تاريخا‬ ‫نحدد‬ ‫أن‬ ‫نستطيع‬Expires‫كالتالي‬:
Response.Cookies("yourName").Expires=#May 1,2014#
‫الـ‬ ‫والسترجاع‬cookie‫التعليمة‬ ‫نستخدم‬ ‫فإننا‬Request.Cookies
‫الجلسات‬ ‫إدارة‬:
‫هم‬ ‫والمخدوم‬ ‫الخادم‬ ‫بين‬ ‫االتصال‬ ‫إدارة‬ ‫عملية‬ ‫في‬ ‫يستخدمان‬ ‫كائنين‬ ‫السابقة‬ ‫األقسام‬ ‫درسنا‬‫ا‬
Response‫و‬Request.
‫هما‬ ‫الجلسات‬ ‫إدارة‬ ‫بعملية‬ ‫خاصين‬ ‫آخرين‬ ‫كائنين‬ ‫سندرس‬ ‫القسم‬ ‫هذا‬ ‫وفي‬Session‫و‬Application
-‫الجلسة‬ ‫كائن‬Session Object
‫أخرى‬ ‫وأمور‬ ‫وعمره‬ ‫اسمه‬ ‫مثل‬ ‫ما‬ ‫مستخدم‬ ‫عن‬ ‫معلومات‬ ‫لتخزين‬ ‫الجلسة‬ ‫كائن‬ ‫يستخدم‬
‫يفضلها‬ ‫التي‬ ‫والأمور‬ ‫يستخدمه‬ ‫الذي‬ ‫الحاسوب‬ ‫بجهاز‬ ‫تتعلق‬.
‫تخزن‬‫الجلسة‬ ‫متغيرات‬ ‫تسمى‬ ‫متغيرات‬ ‫في‬ ‫المعلومات‬ ‫هذه‬Session Variables.
‫على‬‫م‬ ‫ثلاثة‬ ‫في‬ ‫ومدينته‬ ‫وعمره‬ ‫المستخدم‬ ‫اسم‬ ‫تخزين‬ ‫نستطيع‬ ‫المثال‬ ‫سبيل‬‫ات‬ّ‫تغير‬
‫هي‬ ‫جلسة‬UserName‫و‬Age‫و‬City‫كما‬‫يلي‬:
<%
Session("UserName")="Ali Ahmed"
Session("Age")=29
Session("City")="Jerusalem"
%>
‫نموذج‬ ‫خلال‬ ‫من‬ ‫المعلومات‬ ‫هذه‬ ‫مثل‬ ‫على‬ ‫الخادم‬ ‫يحصل‬ ‫ما‬ ‫وغالبا‬‫يملؤه‬‫ف‬ ‫تخزن‬ ‫ثم‬ ‫المستخدم‬‫ي‬
‫تعريفية‬ ‫ملفات‬Cookies‫على‬‫جلسة‬ ‫كل‬ ‫بدء‬ ‫عند‬ ‫وتسترجع‬ ،‫بالمستخدم‬ ‫الخاص‬ ‫الحاسوب‬ ‫جهاز‬.
‫نستطيع‬‫صفحة‬ ‫أي‬ ‫خلال‬ ‫من‬ ‫الجلسة‬ ‫كائن‬ ‫في‬ ‫المخزنة‬ ‫المعلومات‬ ‫استخدام‬ASP‫تنتمي‬‫نفس‬ ‫إلى‬
‫التطبيق‬ASP Application.
‫الجلسة‬ ‫كائن‬ ‫ونهاية‬ ‫بداية‬ ‫طريقة‬Session Object
‫عشر‬ ‫خلال‬ ‫جديدة‬ ‫صفحة‬ ‫بطلب‬ ‫المستخدم‬ ‫يقم‬ ‫لم‬ ‫إذا‬ ‫تلقائي‬ ‫بشكل‬ ‫منتهية‬ ‫الجلسة‬ ‫وتعتبر‬‫ومن‬ ،‫دقيقة‬ ‫ين‬
‫الخاصية‬ ‫باستخدام‬ ‫الوقت‬ ‫هذا‬ ‫تعديل‬ ‫الممكن‬Timeout‫كما‬ ‫الجلسة‬ ‫بكائن‬ ‫الخاصة‬‫يلي‬:
<% Session.Timeout=5> %>
‫المعل‬ ‫لتخزين‬ ‫تستخدم‬ ‫أن‬ ‫يجب‬ ‫إذ‬ ،‫الجلسة‬ ‫متغيرات‬ ‫استخدام‬ ‫في‬ ‫الاقتصاد‬ ‫علينا‬ ‫هامة‬ ‫وكقاعدة‬‫ومات‬
‫فقط‬ ‫المستخدم‬ ‫عن‬ ‫والضرورية‬ ‫الهامة‬.
‫الأمر‬ ‫بتنفيذ‬ ‫الخادم‬ ‫قبل‬ ‫من‬ ‫فوري‬ ‫بشكل‬ ‫الجلسة‬ ‫إنهاء‬Abandon‫يلي‬ ‫كما‬:
<% Session.Abandon %>
‫عندما‬ ‫الجلسة‬ ‫وتبدأ‬:
‫يطلب‬‫صفحة‬ ‫المستخدم‬ASP‫ويكون‬‫الاسم‬ ‫يحمل‬ ‫إجراءا‬ ‫هنالك‬Session_OnStart‫داخل‬
‫الملف‬Global.asa-‫جلسة‬ ‫متغير‬ ‫في‬ ‫معلومة‬ ‫تخزن‬ ‫عندما‬ ‫أو‬.
‫المجموعة‬ ‫خلال‬ ‫من‬ ‫الجلسة‬ ‫متغيرات‬ ‫استخدام‬ ‫ونستطيع‬Contents‫الجلسة‬ ‫بكائن‬ ‫الخاصة‬
‫الجلسة‬ ‫متغيرات‬ ‫جميع‬ ‫على‬ ‫تحتوي‬ ‫والتي‬.‫الجملة‬ ‫فمثلا‬:
<% Response.Write(Session.Contents("Age")) %>
‫الجلسة‬ ‫متغير‬ ‫قيمة‬ ‫تعرض‬Age.
‫طباعة‬‫أسماء‬‫جميع‬‫متغيرات‬‫الجلسة‬
‫ونستطيع‬‫طباعة‬‫أسماء‬‫جميع‬‫متغيرات‬‫الجلسة‬‫والموجودة‬‫في‬‫المجموعة‬Contents
‫باستخدام‬‫جملة‬‫الدوران‬For Each.
‫فمثلا‬‫في‬‫صفحة‬asp‫التالية‬‫ننشئ‬‫ثلاثة‬‫متغيرات‬‫جلسة‬‫ثم‬‫نقوم‬‫بطباعة‬‫أسمائها‬‫وليس‬
‫قيمها‬
‫باست‬ ‫يقوم‬ ‫ثم‬ ‫جلسة‬ ‫متغيرات‬ ‫ثلاثة‬ ‫ينشئ‬ ‫التالي‬ ‫والمثال‬‫جملة‬ ‫خدام‬
‫دوران‬For Each‫وقيمته‬ ‫منها‬ ‫كل‬ ‫اسم‬ ‫لطباعة‬.
‫يلي‬ ‫كما‬ ‫النتيجة‬ ‫تظهر‬ ‫حيث‬:
‫الحاجة‬ ‫انتهاء‬ ‫فور‬ ‫جلسة‬ ‫متغير‬ ‫أي‬ ‫من‬ ‫التخلص‬
‫باس‬ ‫إليه‬ ‫الحاجة‬ ‫انتهاء‬ ‫فور‬ ‫جلسة‬ ‫متغير‬ ‫أي‬ ‫من‬ ‫التخلص‬ ‫ونستطيع‬‫تخدام‬
‫الدالة‬Remove‫في‬ ‫كما‬
 <% Session.Contents.Remove("age") %>
‫الدالة‬ ‫باستخدام‬ ‫الجلسة‬ ‫متغيرات‬ ‫جميع‬ ‫من‬ ‫التخلص‬ ‫يمكن‬ ‫كما‬
RemoveAll‫في‬ ‫كما‬
 <% Session.Contents.RemoveAll() %>
‫الخاصية‬ ‫باستخدام‬ ‫الحالي‬ ‫الجلسة‬ ‫متغيرات‬ ‫عدد‬ ‫معرفة‬ ‫ونستطيع‬Count
‫الجملة‬ ‫في‬ ‫كما‬
 <% Response.Write(Session.Contents.Count) %>
‫التطبيق‬ ‫كائن‬Application Object
‫يشترك‬‫جميع‬‫المستخدمين‬‫في‬‫هذا‬،‫الكائن‬‫أي‬‫أن‬‫المعلومات‬‫المتوفرة‬‫به‬
‫تكون‬‫موحدة‬‫لجميع‬‫المستخدمين‬.
‫عادة‬‫ما‬‫يستخدم‬‫لتخزين‬‫معلومات‬‫تهم‬‫جميع‬‫المستخدمين‬‫مثل‬‫عدد‬
‫المستخدمين‬‫الحالي‬‫وبعض‬‫المعلومات‬‫الخاصة‬‫باستخدام‬‫قاعدة‬‫البي‬‫انات‬
‫الموجودة‬‫على‬‫الخادم‬.
‫وكما‬‫هي‬‫الحال‬‫مع‬‫كائن‬‫الجلسة‬‫فإننا‬‫نستطيع‬‫استخدام‬‫كائن‬‫التطب‬‫يق‬‫في‬
‫أي‬‫صفحة‬‫من‬‫صفحات‬‫التطبيق‬.‫هذا‬‫يعني‬‫إجراء‬‫أي‬‫تعديل‬‫على‬‫هذا‬‫الكائ‬‫ن‬
‫في‬‫صفحة‬‫ما‬‫ينعكس‬‫على‬‫بقية‬‫الصفحات‬‫والمستخدمين‬.
‫في‬‫العادة‬‫تنشأ‬‫متغيرات‬‫كائن‬‫التطبيق‬‫في‬‫إجراء‬‫ينفذ‬‫عند‬‫بدء‬‫الت‬‫طبيق‬
‫يدعى‬Application_OnStart‫يوضع‬‫هذا‬‫الإجراء‬(‫مع‬‫بعض‬‫الإجراءات‬
‫الأخرى‬)‫في‬‫ملف‬‫يدعى‬Global.asa.‫وينفذ‬‫هذا‬‫الإجراء‬‫عندما‬‫يقوم‬‫أول‬
‫مستخدم‬‫بطلب‬‫أول‬‫صفحة‬‫في‬‫التطبيق‬.
‫فمثلا‬‫الإجراء‬Application_OnStart‫التالي‬‫ينشئ‬‫متغيرين‬‫خاصين‬‫بالكائن‬Application
‫الأول‬‫هو‬Start Time‫ويأخذ‬‫الوقت‬‫من‬‫ساعة‬‫الحاسوب‬‫عند‬‫تنفيذ‬‫هذا‬‫الإجراء‬.‫والمتغير‬
‫الثاني‬‫هو‬NoOfUsers‫ويأخذ‬‫القيمة‬‫الابتدائية‬1.
‫التط‬ ‫كائن‬ ‫على‬ ‫التعديلات‬ ‫من‬ ‫مجموعة‬ ‫بتسلسل‬ ‫التحكم‬‫بيقات‬
‫وبما‬‫أننا‬‫نستطيع‬‫تغيير‬‫قيم‬‫متغيرات‬‫التطبيق‬‫من‬‫أي‬‫صفحة‬‫في‬‫ا‬‫لتطبيق‬‫عند‬
‫طلبها‬‫من‬‫قبل‬‫أي‬‫مستخدم‬‫فقد‬‫نواجه‬‫مشكلة‬‫التحكم‬‫بتسلسل‬‫مجم‬‫وعة‬‫من‬
‫التعديلات‬‫التي‬‫قد‬‫تنفذ‬‫في‬‫نفس‬‫اللحظة‬‫من‬‫قبل‬‫أكثر‬‫من‬‫مستخد‬‫م‬.
‫لحل‬‫هذه‬‫المشكلة‬‫تزودنا‬‫لغة‬ASP‫بالدوال‬lock‫و‬unlock‫الخاصة‬‫بالكائن‬
Application.
‫تستخدم‬lock‫لمنع‬‫أي‬‫مستخدم‬‫آخر‬‫من‬‫تغيير‬‫قيم‬‫متغيرات‬‫الكائن‬
Application.‫وبعد‬‫إجراء‬‫المستخدم‬‫للتعديلات‬‫التي‬‫يريد‬‫تستخدم‬
‫الدالة‬unlock‫للسماح‬‫لباقي‬‫المستخدمين‬‫بإجراء‬‫تعديلاتهم‬:‫مثال‬:
<%
Application.lock
Application(NoOfUsers”)= Application(NoOfUsers”)+1
Application.Unlock
%>
‫العام‬ ‫الملف‬Global.asa
‫يعتبر‬‫ملف‬‫اختياري‬‫وهو‬‫عادة‬‫يحتوي‬‫على‬‫اجراءات‬‫وجمل‬‫تعريفية‬‫لبعض‬‫الكائن‬‫ات‬
‫والمتغيرات‬‫التي‬‫نحتاج‬‫لاستخدامها‬‫في‬‫اية‬‫صفحة‬‫ويحتوي‬‫على‬‫الاجراءات‬‫الت‬‫الية‬:
-‫الإجراء‬Application_OnStart:‫الأمور‬ ‫أحد‬ ‫حصول‬ ‫عند‬ ‫وذلك‬ ‫التطبيق‬ ‫يبدأ‬ ‫عندما‬ ‫وينفذ‬:
1.‫مرة‬ ‫لأول‬ ‫التطبيق‬ ‫من‬ ‫صفحة‬ ‫بطلب‬ ‫مستخدم‬ ‫أول‬ ‫يقوم‬ ‫أن‬.
2.‫الخادم‬ ‫تشغيل‬ ‫يعاد‬ ‫عندما‬After Restating the Server
3.‫ملف‬ ‫على‬ ‫تعديل‬ ‫إجراء‬ ‫عند‬Global.asa
-‫الإجراء‬Application_OnEnd:‫جلسته‬ ‫مستخدم‬ ‫آخر‬ ‫ينهي‬ ‫عندما‬ ‫وينفذ‬.
‫المثال‬‫للملف‬ ‫الشائعة‬ ‫الاستخدامات‬ ‫أحد‬ ‫يوضح‬ ‫التالي‬Global.asa‫وهو‬‫عدد‬ ‫إحصاء‬
‫للتطبيق‬ ‫الحاليين‬ ‫المستخدمين‬.
‫الإجراء‬ ‫على‬ ‫الملف‬ ‫يحتوي‬Application_OnStart‫والذي‬‫تطبيق‬ ‫متغير‬ ‫بإنشاء‬ ‫يقوم‬
‫يدعي‬NoOfUsers‫كما‬‫الابتدائية‬ ‫القيمة‬ ‫بإعطائه‬ ‫يقوم‬0.
‫كما‬‫الإجراءين‬ ‫على‬ ‫الملف‬ ‫يحتوي‬Session_OnStart‫و‬Session_OnEnd‫واللذين‬
‫بمقدار‬ ‫المستخدمين‬ ‫عدد‬ ‫بزيادة‬ ‫يقومان‬1‫بمقدار‬ ‫وإنقاصه‬1‫الجلسة‬ ‫بدء‬ ‫عند‬ ‫وذلك‬
‫الترتيب‬ ‫على‬ ‫منها‬ ‫الانتهاء‬ ‫وعند‬.
‫ملف‬global.asa‫للتطبيق‬ ‫الحاليين‬ ‫المستخدمين‬ ‫عدد‬ ‫بإحصاء‬ ‫يقوم‬

More Related Content

What's hot

What's hot (9)

الدرس الرابع عشر
الدرس الرابع عشرالدرس الرابع عشر
الدرس الرابع عشر
 
جافا سكريبت
جافا سكريبتجافا سكريبت
جافا سكريبت
 
تعلم HTML CSS و JavaScript
تعلم HTML CSS و JavaScriptتعلم HTML CSS و JavaScript
تعلم HTML CSS و JavaScript
 
Www.kutub.info 17040
Www.kutub.info 17040Www.kutub.info 17040
Www.kutub.info 17040
 
مواضيع متقدمة في JavaScript
مواضيع متقدمة في JavaScriptمواضيع متقدمة في JavaScript
مواضيع متقدمة في JavaScript
 
javascript3
javascript3javascript3
javascript3
 
خلاصات Rss
خلاصات Rssخلاصات Rss
خلاصات Rss
 
Bootstrap 4 وتطوير قسم المستخدم باستخدام Angular 4
Bootstrap 4 وتطوير قسم المستخدم باستخدام Angular 4Bootstrap 4 وتطوير قسم المستخدم باستخدام Angular 4
Bootstrap 4 وتطوير قسم المستخدم باستخدام Angular 4
 
VB.net Database Chapter 1
VB.net Database Chapter 1VB.net Database Chapter 1
VB.net Database Chapter 1
 

More from جامعة القدس المفتوحة

More from جامعة القدس المفتوحة (20)

كتاب ميكروبيديا Micropedia
كتاب ميكروبيديا Micropediaكتاب ميكروبيديا Micropedia
كتاب ميكروبيديا Micropedia
 
كتاب: Simply AVR مقدمة مبسطة عن النظم المدمجة
كتاب: Simply AVR مقدمة مبسطة عن النظم المدمجةكتاب: Simply AVR مقدمة مبسطة عن النظم المدمجة
كتاب: Simply AVR مقدمة مبسطة عن النظم المدمجة
 
ملخص تحليل الانظمة وتصميمها - النصفي
ملخص تحليل الانظمة وتصميمها - النصفيملخص تحليل الانظمة وتصميمها - النصفي
ملخص تحليل الانظمة وتصميمها - النصفي
 
ملخص تحليل الانظمة وتصميمها - الوحدة السادسة
ملخص تحليل الانظمة وتصميمها - الوحدة السادسةملخص تحليل الانظمة وتصميمها - الوحدة السادسة
ملخص تحليل الانظمة وتصميمها - الوحدة السادسة
 
ملخص تحليل الانظمة وتصميمها - الوحدة الخامسة
ملخص تحليل الانظمة وتصميمها - الوحدة الخامسةملخص تحليل الانظمة وتصميمها - الوحدة الخامسة
ملخص تحليل الانظمة وتصميمها - الوحدة الخامسة
 
ملخص تحليل الانظمة وتصميمها - الوحدة الثالثة
ملخص تحليل الانظمة وتصميمها - الوحدة الثالثةملخص تحليل الانظمة وتصميمها - الوحدة الثالثة
ملخص تحليل الانظمة وتصميمها - الوحدة الثالثة
 
ملخص تحليل الانظمة وتصميمها - الوحدة الثامنة
ملخص تحليل الانظمة وتصميمها - الوحدة الثامنةملخص تحليل الانظمة وتصميمها - الوحدة الثامنة
ملخص تحليل الانظمة وتصميمها - الوحدة الثامنة
 
ملخص تحليل الانظمة وتصميمها - الوحدة السابعة
ملخص تحليل الانظمة وتصميمها - الوحدة السابعةملخص تحليل الانظمة وتصميمها - الوحدة السابعة
ملخص تحليل الانظمة وتصميمها - الوحدة السابعة
 
ملخص تحليل الانظمة وتصميمها - الوحدة الرابعة
ملخص تحليل الانظمة وتصميمها - الوحدة الرابعةملخص تحليل الانظمة وتصميمها - الوحدة الرابعة
ملخص تحليل الانظمة وتصميمها - الوحدة الرابعة
 
ملخص تحليل الانظمة وتصميمها - الوحدة التاسعة
ملخص تحليل الانظمة وتصميمها - الوحدة التاسعةملخص تحليل الانظمة وتصميمها - الوحدة التاسعة
ملخص تحليل الانظمة وتصميمها - الوحدة التاسعة
 
ملخص تحليل الانظمة وتصميمها - الوحدة الثانية
ملخص تحليل الانظمة وتصميمها - الوحدة الثانيةملخص تحليل الانظمة وتصميمها - الوحدة الثانية
ملخص تحليل الانظمة وتصميمها - الوحدة الثانية
 
مناهج البحث العلمي - اللقاء الافتراضي الثاني
مناهج البحث العلمي - اللقاء الافتراضي الثانيمناهج البحث العلمي - اللقاء الافتراضي الثاني
مناهج البحث العلمي - اللقاء الافتراضي الثاني
 
مناهج البحث العلمي - شرح الوحدات 1-5
مناهج البحث العلمي - شرح الوحدات 1-5مناهج البحث العلمي - شرح الوحدات 1-5
مناهج البحث العلمي - شرح الوحدات 1-5
 
ملخص مناهج البحث العلمي كامل
ملخص مناهج البحث العلمي كاململخص مناهج البحث العلمي كامل
ملخص مناهج البحث العلمي كامل
 
ملخص مناهج البحث العلمي
ملخص مناهج البحث العلميملخص مناهج البحث العلمي
ملخص مناهج البحث العلمي
 
مناهج البحث العلمي - اللقاء الافتراضي الاول
مناهج البحث العلمي - اللقاء الافتراضي الاولمناهج البحث العلمي - اللقاء الافتراضي الاول
مناهج البحث العلمي - اللقاء الافتراضي الاول
 
ملخص تعايش مع التكنولوجيا
ملخص تعايش مع التكنولوجياملخص تعايش مع التكنولوجيا
ملخص تعايش مع التكنولوجيا
 
ملخص تقنية تصميم صفحات الويب - الوحدة السادسة
ملخص تقنية تصميم صفحات الويب - الوحدة السادسةملخص تقنية تصميم صفحات الويب - الوحدة السادسة
ملخص تقنية تصميم صفحات الويب - الوحدة السادسة
 
ملخص تقنية تصميم صفحات الويب - الوحدة السادسة
ملخص تقنية تصميم صفحات الويب - الوحدة السادسةملخص تقنية تصميم صفحات الويب - الوحدة السادسة
ملخص تقنية تصميم صفحات الويب - الوحدة السادسة
 
ملخص تقنية تصميم صفحات الويب - الوحدة الخامسة
ملخص تقنية تصميم صفحات الويب - الوحدة الخامسةملخص تقنية تصميم صفحات الويب - الوحدة الخامسة
ملخص تقنية تصميم صفحات الويب - الوحدة الخامسة
 

Recently uploaded

الاستعداد للامتحانات.pptx عرض حولك كيفية
الاستعداد للامتحانات.pptx عرض حولك كيفيةالاستعداد للامتحانات.pptx عرض حولك كيفية
الاستعداد للامتحانات.pptx عرض حولك كيفية
NawalDahmani
 

Recently uploaded (10)

دمشق تاريخ معطر بالياسمين - ماهر أسعد بكر
دمشق تاريخ معطر بالياسمين - ماهر أسعد بكردمشق تاريخ معطر بالياسمين - ماهر أسعد بكر
دمشق تاريخ معطر بالياسمين - ماهر أسعد بكر
 
الشوق إلى حجّ بيت الله الحرام (فضائل الحج)
الشوق إلى حجّ بيت الله الحرام (فضائل الحج)الشوق إلى حجّ بيت الله الحرام (فضائل الحج)
الشوق إلى حجّ بيت الله الحرام (فضائل الحج)
 
تێکچوونا خەموکییا مەزن ژخەموکی چیە و خەموکی چەوا پەیدا دبیت ، چارەسەریا خەموک...
تێکچوونا خەموکییا مەزن ژخەموکی چیە و خەموکی چەوا پەیدا دبیت ، چارەسەریا خەموک...تێکچوونا خەموکییا مەزن ژخەموکی چیە و خەموکی چەوا پەیدا دبیت ، چارەسەریا خەموک...
تێکچوونا خەموکییا مەزن ژخەموکی چیە و خەموکی چەوا پەیدا دبیت ، چارەسەریا خەموک...
 
الدرس-المحاصيل الزراعية في وطننا العربي. مرفت روماني يوسف شاكر شعبة ...
  الدرس-المحاصيل الزراعية في وطننا العربي.   مرفت روماني يوسف شاكر      شعبة ...  الدرس-المحاصيل الزراعية في وطننا العربي.   مرفت روماني يوسف شاكر      شعبة ...
الدرس-المحاصيل الزراعية في وطننا العربي. مرفت روماني يوسف شاكر شعبة ...
 
الأركان التربوية بأقسام التعليم الأولي و الابتدائي.ppt
الأركان التربوية بأقسام التعليم الأولي و الابتدائي.pptالأركان التربوية بأقسام التعليم الأولي و الابتدائي.ppt
الأركان التربوية بأقسام التعليم الأولي و الابتدائي.ppt
 
64617773-قلق-الامتحان.ppt قلق الامتحاااااان
64617773-قلق-الامتحان.ppt قلق الامتحاااااان64617773-قلق-الامتحان.ppt قلق الامتحاااااان
64617773-قلق-الامتحان.ppt قلق الامتحاااااان
 
الاستعداد للامتحانات.pptx عرض حولك كيفية
الاستعداد للامتحانات.pptx عرض حولك كيفيةالاستعداد للامتحانات.pptx عرض حولك كيفية
الاستعداد للامتحانات.pptx عرض حولك كيفية
 
الصف الثاني الاعدادي - العلوم -الموجات.pdf
الصف الثاني الاعدادي - العلوم -الموجات.pdfالصف الثاني الاعدادي - العلوم -الموجات.pdf
الصف الثاني الاعدادي - العلوم -الموجات.pdf
 
الكامل في أسانيد وتصحيح حديث الدنيا سجن المؤمن وجنة الكافر من ( 15 ) طريقا عن...
الكامل في أسانيد وتصحيح حديث الدنيا سجن المؤمن وجنة الكافر من ( 15 ) طريقا عن...الكامل في أسانيد وتصحيح حديث الدنيا سجن المؤمن وجنة الكافر من ( 15 ) طريقا عن...
الكامل في أسانيد وتصحيح حديث الدنيا سجن المؤمن وجنة الكافر من ( 15 ) طريقا عن...
 
واستعمال الموارد الرقمية في التعليم .ppt
واستعمال الموارد الرقمية في التعليم .pptواستعمال الموارد الرقمية في التعليم .ppt
واستعمال الموارد الرقمية في التعليم .ppt
 

ملخص تقنية تصميم صفحات الويب - الوحدة الخامسة