11.07.2015 Views

دورة في ASP

دورة في ASP

دورة في ASP

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

هذا الكتاب هو مشارآة العضو الكريم عبد االله وأرجوا من االله أن يوفقة للمزيدقد طليت منه أن يوافق علي تحويل مشارآته إلي آتاب وهذة الصورة للردةفارجوا منكم الدعاء له ولي بظهر الغيبالدرس الأولمقدمة عن ال aspما الذي يجب أن تعرفه؟قبل أن أبدأ <strong>في</strong> شرح دروس ال <strong>ASP</strong> يجب أن تعرف بعض القواعد الهامة <strong>في</strong> بناء ال:‏<strong>ASP</strong>وقواعد بناء صفحات الشبكة.‏‏-‏‎2‎يجب أن تعرف لغات السكربات مثل:‏ الجافا سكربت وال<strong>في</strong> بي سكربت.‏،www1- HTML,ما هي ال<strong>ASP</strong> ؟(Active server pages) اختصار لي ‏-‏‎1‎هي <strong>ASP</strong>النشطة .<strong>ASP</strong> ‏-‏‎2‎هو(Internet Information services) اختصار ‏-‏‎3‎هي IISبرنامج ينفذ داخل ال.‏IISوهي عباره عن صفحات الخادمةوهي بيانات أو معلومات خدماتالانترنت.‏windows NT.4.0 option و.‏pack مع اعدادت مرآباتwindows2000‎ ‏-‏‎4‎تأتي IIS


الدرس الثانيترآيب سيرفر الiis‏-أنت تستطيع تشغيل ال <strong>ASP</strong> على جهازك الشخصي بدون سيرفر خارجي،‏ لعمل ذالك،‏ أنت تحتاج إلى تنزيل r (PWSInternet‏)على Infromation Server (IIS جهازك الخاصبكآي<strong>في</strong>ة تنزيل سيرفر ال IIS على حهازك الخاص بك على (Windows 2000و XP) WindwosWindowsوهي XP، سوف أقوم انفس الطريقه متبعة <strong>في</strong> تنزيلها على.‏‎2000‎ owsأولاً‏ ‏:اذهب إلى)‏ Control panel لوحة التحكم)‏ ومن اضغطعلى ( Programes Add or Removeإضافةثانياً‏ ‏:سوف تظهر لك النافذه التاليه واختر منهاComponents ve Windows


ضع عليها إشارة صح آما هو موضع <strong>في</strong> الشكل أعلى،‏ ويجب أن ترى أن آل ما بداخل IIS موضوع عليه إشارة صح،‏ ويطلب منك اسطوانة الوندوز آما بإدخال الاسطوانه ومن ثم اضغط علىKبعد أن قمت بعمل جميع هذه الإجراءات اذهب إلى القرص الصلب الذي قمت بتنزيل الوندوز عليه،‏ سوف تجد ملف اسمهعليه جميع العمل هوwwwrootحيث تخزن عليه جميع صفحات ال asp وأنا أنصح أن تضع جميع الصفحالتشغيل صفحات ال <strong>ASP</strong> قم بوضع على عنوان المتصفح التالي:‏http://localhost/test.aspأوhttp://computer_name/test.aspتستخدم هذه الطريقه عندما تكون صفحة test.asp موجوده داخل المجلدootالمقصود ب Computer_name اسم الجهاز الخاص بك الذي قمت بتعر<strong>في</strong>ه عندما قمت بتن


أما إذا آانت صفحة ال test.asp موضوعه داخل مجلد فرضاً‏ اسمه MyWeb داخل مجلد ال wwwroot فسhttp://localhost/MyWeb/test.aspأما بالنسبة لتنزيلها على وندوز ٩٨، <strong>في</strong>مكنكم متابعة شرح لتنزيلها على موقع عالم النورw.alnoor-world.com/asp/topicbody....D=2&SectionID=1وذلك لأنني لا يوجد على جهازي الخاص ب وندوز ، ٩٨ لكي أشرح لكم آي<strong>في</strong>ةوبهذا نكون قد انتهينا من آي<strong>في</strong>ة تثبيت سيرفر ال iis على جهازكالدرس الثالثآائنResponse Objectآائن object:- Responseتستخدم لإرسال النتائج إلى المستخدم من السيرفر(الخادم .(الآن سوف أقوم بشرح آي<strong>في</strong>ة التعامل مع هذا الكائن والتعرف على خصائصه عن طريق الأمثلةوالتطبيقات.‏آيف يتم آتابة النصوص داخل<strong>ASP</strong> ؟‏-عن طريق المنهج response.write يتم آتابة النصوص داخل<strong>ASP</strong>يوضح ذلك-:‏آود،و<strong>في</strong> المثال التالي


آودفسوف يكون ناتج المثال التالي:‏البرمجة أهلا وسهلا بيك <strong>في</strong> منتديات المحيط العربي طريقك لاحتراف علومشرح الكود:‏‏-عند البدء <strong>في</strong> آتابة ملف ال <strong>ASP</strong> يجب تضع وسم البداية <strong>في</strong> ال <strong>ASP</strong> وبعدها تكتب الكود وبعدالإنتهاء من الكود تقوم بغلقه بوسم النهاية.‏‏-أمر الكتابة <strong>في</strong> ملف ال <strong>ASP</strong>هو ") النصوص ")response.write.ما هي لغات السكربت المستخدمة مع ال<strong>ASP</strong> ؟‏-أنت تستطيع أن تستخدم نوعين مختل<strong>في</strong>ن من السكربات:‏النوع الأول:‏VBscript :‏-لكي تضع مجموعة من سكربات ال<strong>في</strong> بي سكربت <strong>في</strong> الصفحة،‏ يجب أن تعرف اللغة المستخدمة <strong>في</strong>أعلى الصفحة،‏ والمثال التالي يوضح ذلك:‏آود


‏("البرمجة%>النوع الثاني:‏Javascript :‏-لكي تضع مجموعة من سكربات االجافا سكربت <strong>في</strong> الصفحة،‏ يجب أن تعرف اللغة المستخدمة <strong>في</strong>آودأعلى الصفحة،‏ والمثال التالي يوضح ذلك:‏ملاحظة:‏عند آتابة آود الجافا سكربت يجب أن تكتب الكود آما هو إذا آان الحرف آبير أو صغير لأنها حالةحساسة،‏ أما آودال<strong>في</strong> سكربت وال <strong>ASP</strong>على عكسها فتسطيع آتابته آما تشاء بحرف آبير أوصغير.‏إرشاد ‏:ليس من الشرط أن تقوم بتعريف لغة السكربت المستخدمه <strong>في</strong> ال<strong>في</strong> بي سكربت،‏ ولكن يجبتعريفها <strong>في</strong> الجافا سكربت .


مثال:‏ آي<strong>في</strong>ة إضافة نصوص ال HTML إلى آود ال<strong>ASP</strong> ؟آود response.write("


منتديات الم حيط العربي طريقك لاحتراف علوم البرمجة أهلا وسهلا بيك <strong>في</strong>آودتعريف المتغيرات ‏-:المتغيرات تستخدم لتخزين البيانات.‏المثال التالي سوف يوضح آيف يتم تعريف المتغيرات <strong>في</strong> ال.‏<strong>ASP</strong>‏"طريقك لاحتراف علوم الب رمجة


‏-<strong>في</strong> أمر الطباعة تلاحظ أننا لم نضع المتغير بين علامتي التنصيص " " وذلك لأننا نريد طباعة قيمةهذا المتغير وليس طباعة المتغير نفسه.‏‏-عندما نريد أن نقوم بطباعة قيمة المتغير ونريد أن ندرج عناصر HTML معه يجب أن تنفصلبينهما بإشارة & آما هو موضح <strong>في</strong> الأعلى.‏ملاحظة:‏ عندما نقوم بطاعة أآثر من متغير أو طباعة جملة ومتغير <strong>في</strong> نفس الأمر يجب أن نفصلبينهما بإشارة&‏ ، وليس من الشرط أن نضع dim لتعريف المتغيرات.‏مثال:‏ آي<strong>في</strong>ة إنشاء مصفوفة عندما تكون البيانات مخزنة داخل متغير؟آودفسوف يكون النتاج عن ذلك التالي:‏


آودأهلا وسهلابك<strong>في</strong> موقعمنتدى المحيط العربيلاحتراف علوم البرمجة طريقكشرح الكود:‏(5)fname: ‏-متغير من نوع مصفوفه وهي تحتوي على خمس مصفوفات.‏(0)fname: ‏-متغير من نوع مصفوفه،‏ وهو الصف الأول من المصفوفة التي قمنا بتعريفها.‏:i ‏-متغير.‏loop نستخدم ‏-سوف for:وقيمة المتغير i وقيمته تبدأ من صفر إلى ٤.next: ‏-تعتني دوران،‏ أي سوف تعيد الحلقه مرة أخرى.‏‏-سوف يخرج عن loop عندما القيمة التالية لا تساويها.‏iآودمثال:‏ آي<strong>في</strong>ة إظهار الوقت والتاريخ عن طريق استخدام لغةVBscript ؟


بيك <strong>في</strong> منتديات المحيط العربي طريقك لاحتراف علومif h >12 then‏("الورد صباح


مثال:‏ آي<strong>في</strong>ة إظهار الوقت والتاريخ عن طريق استخدام لغةJavascript ؟آود12){‏("الخير صباح")‏Response.Write}else{‏("وسهلاً‏ أهلا")‏Response.Write}%>المثال واضح ولا يختلف عن المثال أعلاه،‏ ولكن الاختلاف هو عندما نريد أن نطبع متغيرات من لغةالجافا سكربت و<strong>في</strong> نفس جملة الطباعة يجب أن نضع الإشارة + وليش الإشارة&‏،الأمر Responseيبدأ بحرف آبير.‏وتلاحظ أيضاً‏ أن


‏-مثال:‏ آي<strong>في</strong>ة استخدام procedure <strong>في</strong> <strong>ASP</strong> بواسطةVBscript ؟آودresult: result: آودسوف يكون الناتج آالتالي:‏result: 20شرح الكود:‏


sub: ‏-تعريف procedur واسمها VBproc تحتوي على متغييرن آما موضح <strong>في</strong> الأعلى.‏(a*b: response.write‏)-سوف يطبع نتيجة عملية الضرب.‏عن طريق call وتضع قيمةالإنتهاء.‏procedure ‏-تعني end sub:procedure باستدعاء ‏-تقوم :للمتغيرين.‏: vbproc 5,4 ‏-طريقة أخرى ل استدعاء ال procedure هكذا أيضاً.‏مثال:‏ آي<strong>في</strong>ة استخدام دالة ال function مع ال <strong>ASP</strong> بواسطة الجافا سكربت؟آودresult:


ناتج المثال آما <strong>في</strong> المثال أعلاه.‏شرح الكود - ‏:نفس شرح الكود السابق ولكن باستخدام Function بدل من.‏sub‏-ملاحظة:‏ عند استدعاء Function لا تكتب.‏callمثال ‏:آي<strong>في</strong>ة استخادم لغة الجافا سكربت وال<strong>في</strong> بي سكربت معاً؟آودfunction JSfunction(a,b){response.write(a*b)}result:


esult:الناتج:‏آودresult VBscript: 20result Javascript:20آود‏:شرح الكودعملها نفس عمل المثالين السابقين،‏ ولكن الاختلاف بذلك عندما نقوم باستخدام لغة ال<strong>في</strong> بيسكربت و لغة الجافا سكربت عند آتابة نصوص الجافا سكربت،‏ يجب أن تضع أعلا نصوصالجافا سكربت اللغة المستخدمة وتضع تعريف اخر للجافا سكربت عندها،‏ وهواستدعاء آل منيجب أن تضع عند استدعاء function آلمة‏.‏callوتستطيع آتابة أمر response سواء آان الحرف الأول آبير أو صغير.‏%> runat="server" ،


IsClientConnectedوالآن سوف نقوم بشرح آل واحده منها على حده.‏الخاصيةResponse.Bufferالخاصية Buffer:-تحدد إذا آان الناتج خزن داخل buffer أو لا،‏ <strong>في</strong> حالة عندما يخزن الناتجداخل الbuffer ، فإن الخادم سوف يحمل الرد إلى المتصفح حتى يتم معالجة آل سكربات الخادم،‏أو يتم استدعائها بواسطة المنهجين flush او.‏endملاحظة:‏ هذه الخاصية يجب أن تضع قبل الوسم.‏آودالصيغة لها:‏response.buffer=(flag)flag:‏-‏‎1‎قيمة Booleanالتي تحدد إلى buffer بإن يرسل النتائج أو لا.‏‏-‏‎2‎إذا آانت خطأ لا يوجد.‏buffer‏-‏‎3‎إذا آانت buffer صحيحة،‏ فإنه السيرفر لن يرسل النتائج حتى يتم معالجة السكربات علىالصفحة،‏ أو حتى يتم استدعاء المنهجين flush أو.‏endالمثال التالي،‏ لن يرسل النتائج إلى المتصفح قبل أن ينتهي منloop، إذافإنها سوف تقوم بكتابة سطر آل وقت فإنها سوف تذهب من خلال.‏loopآانت ال buffer خطأآود


آودوناتج الكود سوف يكون التالي:‏12345678910الخاصيةCachecontrol


الخاصية - Cachecontrol: تتحكم <strong>في</strong>ما إذا آانت السيرفرات الوآيلة يجب أن تنقل الصفحة إلىالذاآرة.‏آودالصيغة:‏response.cachecontrol=(control_header)المتغير ‏:‏control_headerتستطيع أن تضع مكانها "puplice" أو."‏private‏"‏‏:‏Publicتخزن داخل السيرفر الوآيل عندما تكون الصفحات لا تحتاج أن يتم تغيرها.‏‏:‏privateلا تخزن داخل سيرفر الوآيل،‏ لأن صفحاتها تتغير من من طلب إلى طلب آخر.‏مثال:‏آودأوالخاصيةcharsetالخاصية charset:


‏-تتحكم بسلسلة من الأحرف التي يستخمها برنامج الاستعراض للمتصفح‏.المجموعة الإفتراضية هي.‏ISO=LATIN-1‎آودعلى سبيل المثال لتغيير سلسلة الأحرف إلىISO=LATIN-7‎، استخدم التالي:‏أو ممكن أن استخدام آود ال HTML بدل من ذلك وهو أن تضعه داخل محتوي صفحات ال،HTML وهوآالتالي:‏آودالخاصيةContenttypeالخاصية Contenttype:-تقوم بتحديد محتوى الصفحة،‏ هل تحتوي على صفحات html أوتحتوي على صور وغيره،‏ وهي تكتب أعلى نصوص ال.‏htmlالصيغة:‏آود


وسوف أقوم بكتابة لكم الأن بعض القيم التي تكتب داخل:‏contenttypeآودتحتوي علىالصفحة نصوصhtmlعلى صور من نوع تحتوي الصفحةjpegمن نوع تحتوي الصفحة على صورgifا لصفحة علىتحتويExcelوممكن أن تحدد ذلك عن طريق نصوص الHTML،آودعلى النحو التالي-:‏


الخاصيةExpiersالخاصية Expiers:-تعد الفترة الزمنية،‏ بالدقائق،‏ التي تحدد زمن إنتهاء فعالية الصفحة .آودالصيغة:‏response.expires=numberNumber: ‏-الفترة الزمنية بالوقت التي تحدد وقت إنتهاء فعالية الصفحة.‏مثال :آودالمثال التالي سوف يحدد زمن إنتهاء فعالية الصفحة خلال ١٠ دقائق:‏الخاصيةExpireAbsolute


الخاصية:‏ExpireAbsoluteتعد بالفتره الزمنيه بالوقت والتاريخ ، لإنتهاء فعالية الصفحة بدقة.‏ قبل الوقت المحدد.‏الصيغة:‏آود‏:‏dateتقوم بتحديد التاريخ،‏ لتاريخ إنتهاء فعالية الصفحة.‏‏:‏Timeتقوم بتحديد الوقت لإنتهاء فعالية الصفحة.‏مثال على ذلك:‏آودممكن أن نقوم بتحديد فعالية إنتهاء الصفحة أيضاً‏ <strong>في</strong> نصوص الHTML ، على سبيل المثال:‏آودالمحيط AM">


الخاصية:‏IsClientConnected‏-تحدد إذا آان المستخدم متصل أو غير متصل على السيرفر.‏الصيغة:‏آودresponse.isclientconnectedمثال على ذلك:‏آودوهكذا نكون قد انتيهنا من خصائص الكائن.‏Responseوالدرس القادم سوف يكون شرح لمناهج الكائن.‏Response


الدرس الخامسمناهج الكائنResponseهناآلكائن Response ObjectAddHeaderClearEndFlushRedirectوهي آالتالي-:‏والآن سوف أقوم بشرح آل واحدة منها على حدةالمنهج Addheader:-تضيف عنوان جديد ل.‏ HTTPملاحظة:‏ نادرأ ما تضاف إلى العنوان،‏ ولا تستطيع حذفها.‏مثال على ذلك،‏ <strong>في</strong> المثال التالي سوف تقوم بنقلك خلال ٥ ثواني إلى الصفحة التي قمت أنتبتحديده:‏آودوممكن ان نستخدم بدلاً‏ من ذلك نصوص الHTML، آالتالي:‏آودالمنهج Clear:-تمسح جميع البيانات المخزنة داخل ال.‏Buffer


ملاحظة:‏ هذه الخاصية تقوم بمسح فقط آل ما قبلها،‏ وما بعده يتم طباعته.‏الصيغة:‏آودresponse.clearمثال على ذلك،‏ المثال سوف يقوم بمسح جميع البيانات التي المخزنة داخل ال buffer فقط.‏آودوسهلاً‏ بك <strong>في</strong> منتديات المحيط العربي أهلاالخير صباحفسوف يكون الناتج فقط:‏آودصباح الخير


المنهج End:- توقف عملية المعالجة للسكربات المخزنة داخل الbuffer ، وتظهر الناتجالحالي.حيث أنها تعرض السكربات التي تم معالجتها فقط.‏الصيغة:‏آودresponse.endآودمثال على ذلك:‏وسهلا بك <strong>في</strong> منتديات المحيط العربي،نتمنى لك أن تقضي أوقات ممتعة أهلا‏<strong>في</strong> منتديات المحيط العربي مرحبا بكسوف يكون الناتج:‏آود


ممتعة أهلا وسهلا بك <strong>في</strong> منتديات المحيط العربي،نتمنى لك أن تقضي أوقاتالمنهج-‏ Flush:يرسل المحتوي المخزن داخل ال buffer إلى برنامج الاستعراض.‏الصيغة:‏آودresponse.flushمثال على ذلك:‏آودp> منتديات المحيط العربي مرحبا بك مرحبا بك منتديات المحيط العربي


الناتج:‏آودمرحبا بك من تديات المحيط العربيالعربي مرحبا بك منتديات المحيطالمنهج:‏redirect‏-ترجع المستخدم مباشرة إلى رابط آخر.‏الصيغة:‏آودresponse.redirect URL‏:‏URLالرابط التي سوف تنتقل إليه بمجرد فتحك للصفحة.‏مثال على ذلك،‏آود


وبذلك نكون قد انتهينا من شرح خصائص ومناهج الكائنObject Responseالدرس السادسالكائنRequest Objectالكائن:‏Object Request‏-يستخدم للحصول على بيانات المستخدم.‏( Input Userمدخلات المستخدم(‏عن طريق Request Objectتستطيع إسترجاع بيانت المستخدم من الفورم.‏‏-هناك طريقتين لإسترجاع بيانت المستخدم:‏الأمر Request.Querystringأولاً‏ الأمر:‏Request.Querystringتستخدم لاسترجاع بيانات المستخدم التي قام بإدخالها منالفروم،‏ وهي تكون مرئية للمستخدم ‏(تظهر البيانات المرسلة على عنوان المتصفح)‏ وهي تستخدمالمنهج getلإرسال البيانات.‏مثال:‏ آي<strong>في</strong>ة إسترجاع بيانات المستخدم باستخدام المنهاج:‏get


‏-أنشأ الصفحة التالية وقم بتسمية هذه الصفحة باسم:.‏simpleform.aspآودname="fname">


"fname: Request.querystring‏"-سوف تقوم باسترجاع البيانات بالنسبة لاسم الأول،‏حيث أن fname ترجع إلى اسم الحقل الذي قمة بتعريف الحقل اسم الأول.‏"lname: "Request.querystring ‏-سوف بتقوم باسترجاع البيانات بالنسبة لإسم العائلة،‏حيث أن lname ترجع إلى اسم الحقل الذي قمنا بتعريف حقل اسم العائلة.‏‏-سوف تلاحظ <strong>في</strong> نتيجة هذا الكود آيف سوف يتم الحصول على البيانات المستخدم التي قام بإدخالهعن طريق الفورم،‏ بعد أن تقوم بإدخال البيانات سوف تلاحظ <strong>في</strong> عنوان المتصفح آيف يتم إرسالالقيم إلى السيرفر،‏ فرضاً‏ إذا آان قيمة fname المدخلة تساوي abdullah وقيمة اسم العائلةتساوي shaqaliahفالبيانات التي تم إرسالها إلى السيرفر سوف تكون على هذا الشكل:‏آودhttp://www.arabmoheet.net/simpleform.asp?fname=abdullah&lname=shaqaliahملاحظة ‏:تلاحظ القيم المرسلة <strong>في</strong> نفس الصفحة التي قمنا بإنشاء الفورم عليها.‏مثال:‏ آي<strong>في</strong>ة طباعة القيم المدخلة <strong>في</strong> الفورم?‏‏-أنشا الصفحة التالية وقم بتسمية هذه الصفحة باسم:.‏simpleform2.aspآود


name="fname">


name="fname"> :الأول"&lname‏>"=%>:العائلة اسم


شرح آود صفحة:‏form2.asp‏:‏fnameمتغير يحتوي على القيمة المخزنة <strong>في</strong> Request‏")المدخلة ("fname من حقل اسمالأول <strong>في</strong> صفحة.‏form.asp‏:‏lnameمتغير يحتوي على القيمة المخزنة <strong>في</strong> Request‏")المدخلة ("lname من حقل اسمالأول <strong>في</strong> صفحة.‏form.asp‏:تساوي أمرالطباعة response.writeبطباعة القيمة المخزنة داحل المتغير.‏fnameملاحظة:‏ تلاحظ أنني لم أستخدم الأمر Request.querystringوسوف تقوم، وقمت بوضع Requestفقط ، فكلا الاثنتين يساوي نفس الشئ لأن السيرفر سوف يتعرف عليها عن طريق وضع المنهجGet.مثال ‏:آي<strong>في</strong>ية إسترجاع قيم لها نفس المتغير ونقوم بطباعتها؟‏-‏‎1‎الصفحة الأول،‏ واسمها ، get.asp وتحتوي فقط على الفورم،‏ والصفحة المرسلة إليها النتائج :آودsize="9"> input‏>الإسم type="text" name="n" الأولsize="9"> input‏>اسم type="text" name="n" العائلة


‏-‏‎2‎الصفحة الثانية واسمها names.asp هي التي سوف تستقبل القيمتين وتقوم بطابعتها،‏ <strong>في</strong>هذه الحالة سوف نستخدمloop ، لكي نقوم باسترجاع قيمتي المتغير n ونقزم بطابعة القيم :آودشرح الكود:‏‏-‏‎1‎<strong>في</strong> صفحة get.asp: نلاحظ ترسل إلى صفحةnames.asp ، قيمتين ولهما نفس المتغير.‏‏-‏‎2‎<strong>في</strong> صفحة names.asp: عندما يكون للقيم المرسلة قيمتين ونريد استرجاع القيمتين لنفسالمتغير ، ونقوم بطابعتهما يجب أن نستخدم <strong>في</strong> هذه الحالة.‏loopi و ، loop هنا ال ‏-‏‎3‎استخدمة for i= 1 to request.querystring("n").count:متغير قيمته تبدأ من واحد إلى عدد القيم المرجعة منrequest، و countتحسب آم قيمة توجدداخلrequest ، والقيم المرجعة لدينا هي اثنتنين،‏ أي i سوف تساوي من واحد إلى اثنين.‏‏:‏‎4-(request.querystring("n")(iعند request.querystring("n ‏")تحتوي علىالقيم المرجعة ، لكن أي قيمه سوف تبدأ <strong>في</strong> طباعتها هل هي القيمة abd أو القيمةmaher، ولكنعن طريق (i) عندما تعود قيمتها إلى واحد سوف تقوم عندها بطباعة القيمة الأولى المرسلة،‏وعندما تصبح قيمتها ٢ سوف تقوم بطباعة القيمة الثانية المرسلة لنفس المتغير.‏next: ‏-‏‎5‎أي التالي،‏ سوف تعمل حلقة دوران وسوف تقوم بطباعة جميع القيم إلى أن تنهي قيمةفعندها سوف تخرج منloop i،،وتقوم بعرض جميع النتائج.‏


مثال:‏ إرسال البيانات عندما يضغط المستخدم على رابط تشعبي؟<strong>في</strong> هذا المثال يوضح آي<strong>في</strong>ة إرسال بعض البيانات إلى الصفحة عن طريق الرابط،‏ وإظهار تلكالبيانات على صفحة الهدف(و<strong>في</strong> هذا المثال صفحة الهدف سوف تكون على نفس الصفحة.(‏آودExample شرح الكود:‏‏-<strong>في</strong> هذا المثال،‏ سوف نقوم بعمل رابط يحتوي على المتغير color وقيمتهgreen ، حيث عندمايضغط المستخدم على هذا الرابط،‏ سوف نقوم باستقبال هذه القيمة وبطباعتها على الصفحة الهدف.‏استخدام جملة if الشرطية:‏<strong>في</strong> هذا المثال سوف أقوم بالفحص إذا آان المستخدم قد قام بادخال جميع البيانات المطلوبة أو لا:‏قم بإنشاء صفحتين،‏ الصفحة الأولى وليكن اسمهاpropriteis.asp ، والثانية وليكن اسمهاaspaccept.asp.


‏-‏‎1‎صفحة propriteis.asp تحتوي فقط على الفورم والصفحة التي سوف ترسل إليها بياناتالفورم،‏ وهي آالتالي -:آودsize="6"> input‏>:اسم type="text" name="name" المستخدمsize="6"> input‏>:البريد type="text" name="email" الإآترونيsize="6"> input‏>:الشخصي type="text" name="website" الموقعcols="12"> textarea‏>:التوضيح rows="2" name="dis"‏-‏‎2‎صفحة aspaccept.asp تحتوي على على الأوامر التالية:‏آود


شرح الكود:‏then: ifجملة name"" if سوف تفحص إذا آانت قيمة المتغير name لا تساوي فارغه،‏سوف تقوم بتن<strong>في</strong>ذ الشرط الذي يليها.‏‏:‏elseإذا آان الشرط <strong>في</strong> جملة if غير صحيح،‏ أي إذا آانت قيمة المتغير name فارغة ، سوفتقوم بتن<strong>في</strong>ذ الشرط الذي يليها.‏if: endتعني الإنتهاء من جملة if الشرطية.‏ثانيا الأمرRequest.Form ‏:وهي لا تختلف آثيرأ عن أمرRequest.querystring‏،‏ فهيتستخدم لجمع القيم من الفورم مع استخدام المنهج ، Post وهي لا تكون مرئية للمستخدم،‏ ولاتقوم بتحديد آمية البيانات المرسلة على عكس.‏Request.querystringآودمثال:أنشأ الصفحة التالية وقم بحفظها باسم.‏formpost.asp


name="fname">


"username: Request.form‏"-سوف تقوم باسترجاع البيانات بالنسبة لاسم المستخدم،‏حيث أن username ترجع إلى اسم الحقل الذي قمنا بتعريف الحقل اسم المستخدم.‏"pass: "Request.form ‏-سوف تقوم باسترجاع البيانات بالنسبة لكلمة المرور،‏ حيث أنpassترجع إلى اسم الحقل الذي قمة بتعريف حقل آلمة المرور.‏‏-سوف تلاحظ <strong>في</strong> نتيجة هذا الكود آيف سوف يتم الحصول على البيانات المستخدم التي قام بإدخالهعن طريق الفورم،‏ بعد أن تقوم بإدخال البيانات سوف تلاحظ <strong>في</strong> عنوان المتصفح ، أنه لا يوجدبيانات مرسلة.‏ فقط سوف ترى هذا الشكل لعنوان المتصفح:‏آودlocalhost/formpost.aspملاحظة ‏:الأمر request.form لا يفرق عن الأمر request.querystring إله بطريقةإرسال البيانات فقط،‏ ممكن أن تكتب الأمر request.form لتخزين البيانات المرسلة من الفورمبهذا الشكل.‏request("username‏")‏مثال:‏ آي<strong>في</strong>ة استخدام الفورم معbutton radio ؟هذا المثال يوضح آي<strong>في</strong>ة التعامل مع المستخدم منخلالbutton ، radio باستخدامالنموذج مستخدم بطريقة المنهج:‏post ،Request.formآود


المفضل الرجاء قم باختيار اللون‏:لك


font>"الكمثره


الأمر Response.cookiesآيف يتم إنشاء الكعكات؟هو الذي يستخدم <strong>في</strong> إنشاء الكعكات.‏ملاحظة ‏:هذا الأمر يكتب قبل الوسم.‏<strong>في</strong> المثال التالي،‏ سوف أنشاء cookieواسمها "firsname" وقيمتها:‏ abd" "آودوتستطيع أن تحدد صلاحية إنتهاء هذا:‏cookieآود


سوف تلاحظ أنه لا يوجد شئ،‏ وذلك لأننا قمنا فقط بإنشاء cookie ولم نقم باسترجاع قيمته،‏ ولكنسوف تجد <strong>في</strong> ملف cookies على جهازك الخاص بك ملف صغير يحتوي على اسم cookieوقيمته وهذا الملف تجده على المسار التالي اذا آان الوندوز موجود على قرص الصلب.‏cCocuments and SettingsabdullahCookiesحيث أن abdullah هو اسم الجهاز الخاص بي أنا،‏ أما أنت فضع اسم الجهاز الخاص بك الذيقمت بتعريفه عندما قمت بإنزال الوندوز،‏ وإن لم يكن الوندوز على القرص c فقط ضع بدل c اسمالقرص الصلب الذي يوجد عليه الوندوز.‏الأمر request.cookiesآيف يتم استرجاع القيم من?‏cookieيستخدم لإسترجاع قيمcookie، والمثالالتالي يوضح ذلك:‏آود


طبعاً‏ لن يكون هناك نتيجة،‏ وذلك لأنه قمنا بتحديد تاريخ إنتهاء فعالية الكوآي،‏ بتاريخ فائت.‏الكعكات مع المفاتيح ?‏-إذا آانت الكعكات تحتوي على عدد من القيم،‏ فعندها نقول بأن الكعكات تمتلك مفاتيح.‏<strong>في</strong> المثال التالي،‏ سوف أقوم بإنشاء مجموعة من الكعكات واسمها"‏user‏"‏يمتلك مفاتيح تحتوي على بيانات."‏user‏"‏، و "cookie "userآود<strong>في</strong> هذا المثال سوف يرسل السيرفر لديك آل هذه الكعكات إلى المستخدم.‏قم بحفظ هذا الكود باسمaspkeys.asp ، وقم بقراءته على متصفحك حتى يتم إنشاء.‏cookie


لقد تم إنشاء الكعكات الأن،‏ و<strong>في</strong> المثال التالي سوف نقوم بقراءة القيم المخزنه داخل الكعكات:‏آودوالناتج آالتالي:‏


user:firstname=Abdullahuser:lastname=shaqlaihuser:contry=palestineuser:age=22ملاحظة ‏:عند آتابة هذا الكود سوف يقوم بطباعة جميع cookie الموجوده على جهازك الخاص بكسواء آانت يوجد لها مفاتيح أو لا يوجد لها،‏ أي لو آنت انت مسجل <strong>في</strong> اي موقع،‏ وآان يتبع نظامالكوآيز،‏ سوف تظهر لك جميع ملفات الكوآيز التي لديك.‏مثال آيف يتم تخزين اسم المستخدم،‏ وآلمة المرور داخل الكوآيز،‏ عند إدخالها من الفروم؟الصفحة التالية تحتوي على الفورم،‏ لإدخال اسم المستخدم وآلمة المرور:‏آوداس م المستخدم: name="password" input‏>:آلمة type="password" المرورsize="20">


هنا سوف سوف يتم تخزينهم داخل الكوآيز:‏آودresponse.cookies("username")=request("username")response.cookies("password")=request("password")response.cookies("username").expires=date+1response.cookies("password").expires=date+1اعتقد المثال واضح ولا يحتاج للشرح،‏ لكن عند تحديد صلاحية الإنتهاء date+1 تعني بأنه فعالمن تاريخ اليوم + يوم واحد.‏مثال:‏ آيف يتم قراءة آوآيز محدد؟آودrequest.cookies("username")


2- ServerVariables:‏-تستخدم لاسترجاع قيم متغيرات السيرفر.‏الصيغة:‏آودrequest.servervariables (server_variable)‏:‏server_variableاسم متغير السيرفر الذي نريد استرجاع قيمته.‏مثال ‏:<strong>في</strong> بعض الأحيان نتحاج إلى أن نعرف بعض المعلومات عن زوار الموقع أو عن السيرفرالمستضيف للموقع،‏ وهذا يتم عن طريقServerVaribles ، وتكون النتيجة على هيئة نص:‏آودرقم‏ (IP:المنهج‏‏/>:المستخدم


p>اسم‏‏:السيرفرالبروت الذي رقم‏‏:طلبتهالوب المستخدم على برنامج‏Response.Write(Request.ServerVariables("server_software"))%>:السيرفر>وسوف يكون الناتج على سبيل المثال:‏(IP):217.21.4.46 رقمGet‏::المنهج المستخدمarabteam2000.com‏:السيرفر اسمرقم البورت الذي طلبته::‏ ٨٠Microsoft-IIS/5.0 ‏:على السيرفر برنامج الوب المستخدم


هنا سوف اضع بعض متغيرات:‏server_variable‏:‏AUTH_TYPEهي الطريقة الذي يستخدمه السيرفر للمصادقة على اسم المستخدم.‏‏:‏CONTENT_LENGTHطول الفترة الزمنية عند الطلب‏:‏CONTENT_TYPEنوع البيانات المطلوبة‏:‏GATEWAY_INTERFACEنسخة السي جي أي المستخدمة <strong>في</strong> السيرفر‏:‏LOGON_USERاسم المستخدم <strong>في</strong> حال استخدام الشبكة الداخلية للويندوز ان تي.‏‏:‏PATH_INFOالمسار الافتراضي للملف المطلوب على السيرفر‏:‏PATH_TRANSLATEDالمسار الطبيعي للملف الملطوب على السيرفرالاستعلام المستخدم من خلال الواصفة‏ ‏:‏QUERY_STRINGنوع‏:‏REMOTE_ADDRرقم الاي بي للجهاز الزائر.‏Computer Name الجهاز الزائر.‏ ‏:‏REMOTE_HOSTاسمGET المستخدم هل هو ‏:‏REQUEST_METHODالنوع‏:‏SCRIPT_MAPاسمأو POST أو.‏ PUTالنطاق Domainللصفحة.‏‏:‏SCRIPT_NAMEاسم الملف المطلوب مع المسار الافتراضي له‏:‏SERVER_NAMEاسم السيرفر.‏‏:‏SERVER_PORTرقم البورت الذي تم الطلب من خلاله.‏‏:‏SERVER_PORT_SECUREإذا آان(١)فهو مؤمن أما إذا آان(٠)فهو غير مؤمن‏:‏SERVER_PROTOCOLنوع البروتوآول المستخدمMicrosoft IIS الوب المستخد على السيرفر مثال‎4‎ ‏:‏SERVER_SOFTWAREبرنامج‏:‏URLالملف المطلوب ضمن المسار الافتراضي لههذه إحدى المتغيرات التي نستخدمها،‏ وهناك الكثير من المتغيرات،‏ ومعظمها أنا أجلها،‏ ولكن سوفأقوم بكتابة لكم الكود التالي،‏ حيث هذا الكود سوف يقوم لك باستعراض جميع المتغيرات التي تستخدممعserver_variable


آودوبذلك نكون قد انتهينا من هذه الخاصية.‏‏-‏‎3‎الخاصية:‏TotalBytesتستخدم لاسترجع العدد الكلي للبياتات المرسلة من قبل المستخدم.‏الصيغة:‏آودVarbytes=Request.Totalbytes


مثال:‏ إيجاد العدد الكلي للباياتات المرسلة من قبل المستخدم؟آود الاسم :


الكائن)‏ Session Object الجلسة:(‏إن آائن الجلسة يستخدم لتخزين البيانات،‏ أو تغيير الإعدادات لجلسلة المستخدم(‏ أي عندما يكونالمستخدم داخل إلى الموقع).‏ إن المتغييرات المخزنة داخل آائن الجلسة تحمل البيانات لمستخدمواحد،وهي متوفرة لكل الصفحات <strong>في</strong> تطبيق واحد.‏توضيح أآثر لكائن الجلسة:‏‏-عندما تتعامل مع أي تطبيق،‏ فإنك تقوم بفتحه،‏ وتعمل بعض التغييرات ومن ثم تغلقه ‏(وهذا هوتعريف الجلسة).‏ إن الكمبيوتر يعرف من أنت.‏ إن يعرف متى تبدأ التطبيق ومتى تنهي منه.‏ ولكنعلى الانترنت هناك مشكلة واحدة:‏ إن مزود خدمة الويب فإنه لا يعرفك وماذا تفعل لأن عنوان الHTTPلا يحتوي على حالة.‏إن <strong>ASP</strong>يحل هذه المشكلة بواسطة إنشاء cookie خاص لكلمستخدم.‏ إن ال cookie يرسل إلى االزبون ويحتوي على بيانات تعرف المستخدم.‏ هذه الواجهةتسمي.‏Object Session‏-إن آائن الجلسة يستخدم لتخزين البيانات،‏ أو تغيير الإعدادات لجلسة المستخدم(‏ أي عندما يكونالمستخدم داخل إلى الموقع).‏ إن المتغييرات المخزنة داخل آائن الجلسة تحمل البيانات لمستخدمواحد،وهي متوفرة لكل الصفحات <strong>في</strong> تطبيق واحد.‏ من البيانات التي تكون مخزنة <strong>في</strong> آائن الجلسةهي الإسم،‏ رقمID ، والتفضيلات ‏.إن مزود السيرفر(الخادم)‏ ينشئ جلسة لكل مستخدم جديد،‏ ويدمرالجلسة عندما تنهي صلاحيتها.‏أعتقد أن مفهوم الجلسة أصبح الأن واضح لكم.‏‏-‏‎1‎المستخدم الجديد يقوم بطلب ملف<strong>ASP</strong>‏-‏‎3‎المستخدم يطلب ملف <strong>ASP</strong>متى يبدأ الجلسة؟تبدأ الجلسة عندما يكون:‏، وملف Global.asaproceduer session_onstart.‏-‏‎2‎القيم تخزين <strong>في</strong> متغيرات الجلسة.‏والذي يحتوي على، ملفGlobal.asa ، يستخدم الوسم objectمع مدى فترة الجلسة.‏لإنشاء ال


متى تنتهي الجلسة؟‏-تنهي الجلسة عندما المستخدم لا يطلب أويقوم بتحديث الصفحة <strong>في</strong> تطبيقات ال <strong>ASP</strong> لمدة محددةمن الوقت،‏ فإن المدة الإفتراضية لإنتهاء الجلسة هي ٢٠ دقيقة.‏‏-إذا آنت تريد أن تضع زمن لانتهاء فعالية الصفحة لفترة أقل أو أآثر من القيمة الإفتراضية،‏ يمكنكاستخدام الخاصية.‏Timeoutالمثال التالي يضع زمن صلاحية انتهاء الجلسة لمدة ٥ دقائق:‏آودآود‏-آما أنه يمكن أن تحدد إنتهاء أو تدمير الجلسة باستخدام المنهج.‏Abandonملاحظة ‏:المشكلة الرئيسية بالنسبة للجلسات هي متى يجب أن تنتهي،‏ فإنك لا تعرف متى يكون أخرطلب للمستخدم هل هو الطلب الأخير أم لا.‏ ولذلك لا نعرف متى نجعل الجلسات مفتوحة،‏ فإن الانتظارإلى فترة طويلة تستهلك موارد السيرفر.‏ ولكن إذا تم مسح الجلسة بسرعة آبيرة فإنك سوف تخاطر<strong>في</strong> حالة ما إذا عاد المستخدم وآان السيرفر قد قام بمسح آل البيانات،‏ وعندها سوف يظطر


المستخدم إلى البدء من جديد.‏ إن إيجاد زمن إنتهاء الجلسة يمكن أن يكون صعباً.‏إرشاد:إذا آنت تستخدم متغيرات الجلسة،‏ فمن الأفضل أن تخزن بها آميات صغيرة من البيانات.‏تخزين وإسترجاع قيم المتغيرات:‏آود‏-أهم شئ بالنسبة لكائن session هو أنك تستطيع تخزين المتغيرات بداخله،‏ آالتالي-:‏المتغير "username"وقيمته"‏ahmad‏"‏، والمتغير "age" قيمته .٢٢آودمثال ‏:<strong>في</strong> هذا المثال سوف اقوم بإنشاء آائن الجلسة،‏ وعرض قيم متغيرات الجلسة:‏


‏-عندما تخزن القيم داخل متغيرات session فإنه يمكنك استدعائه <strong>في</strong> أي صفحة من تطبيقات ال،<strong>ASP</strong> المثال التالي سوف يوضح ذلك:‏سوف نقوم سوياً‏ بإنشاء صفحتين ، واسمهما session_form.asp والثانيهsession_result.asp:آود‏-‏‎1‎الصفحة الأولى واسمها session_form.asp:اسمك‏ input‏>:أدخل type="text" name="name" size="20">


شرح الكود:‏‏-<strong>في</strong> هذه الصفحة سوف ترسل القيمه إلى نفس الصفحة.‏("session("name")=request("name: ‏-بعد أن أرسلة القيمة إلى نفس الصفحة،‏ قمتبتخزين داخل متغير الجلسلة.‏آود‏-‏‎2‎الصفحة الثانية ، واسمها:‏sesssion_result.asp‏:بالزائر المحيط العربي يرحب


شرح الكود:‏‏-<strong>في</strong> هذه الصفحة سوف يقوم بطباعة القيمة المخزنة داخل متغير الجلسة،‏ التي خزنة قيمته داخلالمتغير <strong>في</strong> صفحة.‏session_form.asp‏-أما جملة الشرطيه if <strong>في</strong> الأعلى الصفحة تقوم بالفحص إذا آان قيمة متغير الجلسه يساوي فارغ،‏فسوف تذهب إلى صفحة session_form.asp وحامله معها قيمة.‏‏-بعد أن تذهب إلى صفحة session_form.asp ومعها القيمه الخطأ،‏ سوف يتم استقبال هذهالقيمه وعرض ناتج الخطأ آما هو موضح <strong>في</strong> صفحة.‏session_from.asp‏-ملاحظة ‏:<strong>في</strong> هذا المثال لم نحدد زمن إنتهاء آائن الجلسة،‏ فعندها سوف ينتهي عند الوقتالافتراضي ٢٠ دقيقة.‏‏-وتستطيع أن تخزن أولوية المستخدم داخل الجلسة،‏ ومن ثم دخول ذلك الأولوية لاختيار أي صفحةلإرجاعها للمستخدم.‏‏-هناك مجموعات خصائص ومنهاج وأحداث لكائن Session Object وهي آالتالي-:‏‏-‏‎1‎المجموعات:‏تنقسك إلى:‏Contents•StaticObjects•


المجموعةContentsالمجموعة:‏Contents‏-تحتوي على جميع متغيرات الجلسة.‏مثال:‏ آي<strong>في</strong>ة عرض جميع متغيرات الجلسة؟<strong>في</strong> هذا المثال سوف نستخدم الLoop ، لعرض جميع متغيرات الجلسة الموجودة على جهزاكالخاص بك:‏آودمثال ‏:<strong>في</strong> هذا المثال سوف أقوم بعرض جميع قيم متغيرت الجلسة،‏ وإظهار عدد هذه المتغيرات.‏آود


شرح الكود:‏j ‏-المتغير j=session.contents.connt:داخل الخاصية.‏contents") response.write: متغيرات الجلسة ‏-عدد ("j &=، المتغيرjقيمته تساوي عدد المتغيرات الجلسة الموجودهوالقيمة التي بداخله عدد المتغيرات الجلسة.‏i ‏-تحتوي (session.contents(i:تقوم بطباعة القيمة المخزنة داخلعلى قيم متغيرات الجلسة.‏-ملاحظة ‏:بهذه الطريقة سوف تقوم باستعراض جميع الجلسات المتواجدة على جهازك الخاصبك،‏ سواء قمت أنت بانشائها أو أي موقع سجلت به آان يستخدم آائن session عند التسجيل.‏المجموعةStaticobjects


المجموعة:‏Staticobjects‏-تحتوي على جميع قيم متغيرات الجلسة.‏مثال ‏:إظهار القيم المخزنة داخل متغيرات الجلسة نستخدم االمجموعةstaticobject ، آما هوموضح <strong>في</strong> المثال التالي -:آود


الخاصيةCodepageالخاصية:‏Codepage‏-تحتوي على آود الصفحة،‏ أي أنها تقوم بإظهار آود محتوي الصفحة.‏أمثله على محتوى آود الصفحة:‏اقتباس:1256 ‏-تعني بأن الصفحة باللغة العربية.‏:1252 ‏-الصفحةباللغة الإنجليزية،‏ والأوربية.‏:932 ‏-الصفحة باللغة اليبانية.‏مثال ‏:المثال التالي،‏ سوف يظهر آود محتوي الصفحة:‏آود


الخاصيةSessionIDالخاصية:‏SessionID‏-تضع أو تسترجع رقم ال ID لكل مستخدم،‏ والتي تولد عن طريق السيرفر(الخادم.(‏الصيغة:‏آودSession.SessionIDمثال:‏ لإسترجاع رقم ال ID لكل مستخدم:‏آود


‏-‏‎3‎مناهج الكائن Session:Contents.Remove•( ) Contents.Removeall•المنهجContent.removeالمنهج:‏Content.remove- تستخدم لإزالة أو حذف متغيرت الجلسة الموجودة داخل المجموعة.‏Contentsمثال:‏ حذف متغير من متغيرات:‏Contentsآود


next%>المنهج( ) Contents.RemoveAllالمنهج:‏Contents.RemoveAll ) (‏-تستخدم لحذف أو لإزالة جميع متغيرات الجلسة.‏مثال ‏:المثال التالي،‏ سوف يقوم بحذف جميع متغيرات الجلسة الموجدة داخل المجموعةContents:آود


سوف تلاحظ بأن جميع متغيرات الجلسة قد حذفها من داخل المجموعة.‏Contents‏-‏‎4‎أحداث الكائن:‏SessionSession_OnEndSession_OnStart••الأحداثSession_OnStart and Session_OnEndالحدث:‏Session_OnStart‏-يحدث عندما السيرفر ينشأ الجلسة.،‏ وهذا الحدث يتم وضعه <strong>في</strong> ملف.‏Global.asaالحدث:‏Session_OnEnd‏-يحدث عندما تنهي الجلسة،‏ ويتم وضعه <strong>في</strong> ملف.‏Globa.asa


سو ف يتم التعامل مع هذين الحدثين إنشاءالله <strong>في</strong> درس ال.‏Globa.asaوبذلك نكون قد انتهينا من الكائن.‏Object Sessionالدرس التاسعالكائنApplication Objectالكائن:‏Object Applicationمجموعة من ملفات ال <strong>ASP</strong> تعمل مع بعضها البعض لأداء مهمة معينة تسمى تطبيقات(Application).توضيح أآثر لكائن:‏Application‏-أي تطبيق على الشبكة هو عبارة عن مجموعة من ملفات asp. إن تلك الملفاتن تعمل مع بعضهاالبعض لأداء مهمة معينة.‏‏-إن آائن ال Application Object <strong>في</strong> ال <strong>ASP</strong> يستخدم لربط تلك الملفات مع بعضهاالبعض.‏‏-إن آائن ال Application Object يستخدم لتخزين ودخول المتغيرات من أي صفحة،‏ تماماً‏مثل آائن الجلسة.‏ والفرق بينهما هو أن آل المستخديمن يتشارآون <strong>في</strong> "Application‏"‏Objectواحد فقط.‏‏-إن آائن ال Application Object يجب أن يحتوي على معلومات والتي سوف تستخدم منقبل الكثير من الصفحات <strong>في</strong> التطبيق)مثل معلومات ربط قواعد البيانات ‏.(وهذا بمعنى أنه يمكنكدخول المعلومات من أي صفحة.‏ و تعني أيضاَ‏ أنه يمكنك تغيير المعلومات من موقع واحد،‏ ومن ثم


تنشر المعلومات الجديدة أوتوماتيكياً‏ إلى جميع الصفحات.‏وبذلك أصبح مفهوم آائن ال Application واضح إليكم.‏-تخزين واسترجاع قيم المتغيرات:‏‏-متغيرات ال Application يمكن الصول إليها وتغييرها بواسطة أي صفحة <strong>في</strong> التطبيق.‏آودمثال:‏ آي<strong>في</strong>ة تعريف المتغيرات واسترجاع قيمتها؟شرح الكود:‏user ‏-ال "application("user")="Mahmoud:Mahmoud Applicationوقيمة المتغير.‏هي عباره عن متغير(("response.write(application("user: ‏-سوف تظهر قيمة المتغير وتظهرها علىبرنامج الاستعراض.‏


المجموعات وخصائص ومنهاج الكائن Application Object وهي آالتالي-:‏‏-‏‎1‎المجموعات:‏ContentsStaticObjects••المجموعةContentsالمجموعة:‏ Contents‏-تحتوي على آل المتغيرات المضافة إلى التطبيق أو الجلسة خلال أمر ال.‏Scriptمثال:‏ المثال التالي سوف نرى آي<strong>في</strong>ة استرجاع جميع متغيرات ال.‏ Applicationآود


next%>آودمثال:‏ المثال التالي،‏ سوف يقوم باسترجاع قيم المتغيرات وعددها:‏تلاحظ أنها لا تختلف عن آائن الجلسة.‏المجموعةStaticobjectsالمجموعة:‏Staticobjects‏-تحتوي على جميع قيم متغيرات ال.‏Application


مثال:استخدام ال loop لإظهار جميع قيم متغيرات الجلسة.‏آود‏-‏‎2‎المناهج:‏Contents.Remove•( ) Contents.Removeall•LockUnlock••


المنهجContents.Removeالمنهج:‏Contents.Remove‏-تستخدم لإزالة أو حذف متغيراتApplication الموجودة داخل المجموعة.‏Contentsمثال ‏:آي<strong>في</strong>ة حذف متغير من متغيرات ال Contents <strong>في</strong> ال:‏Applicationآودلا فرق بينه وبين المثال الذي تم شرحه <strong>في</strong> آائن ال ، session فلا داعي للشرح.‏المنهج( ) Contents.RemoveAll


المنهج:‏Contents.RemoveAll ) (‏-تستخدم لحذف أو لإزالة جميع متغيرات الجلسة.‏مثال:‏ آي<strong>في</strong>ة حذف جميع متغيرات ال Contents <strong>في</strong> ال:‏Applicationآودلا فرق بينه وبين المثال الذي تم شرحه <strong>في</strong> آائن ال ، session فلا داعي للشرح.‏المنهجLock and Unlock


‏-تمنع المستخدمين الآخرين من تغيير المتغيراتالمنهج:‏Lock<strong>في</strong> ال ( Object Applicationمن أن زبون واحد فقط يستطيع تغيير متغييرات التطبيق.(‏تستخدم للتأآدالمنهج:‏Unlock‏-تسمح للمستخدمين الآخرين لتغيير متغيرات المخزنة <strong>في</strong> ال ( Object Application بعد أنأقفلت باستخدام المنهج.("‏Lock‏"‏الصيغة:‏آودApplication.lockApplication.Unlockسوف يتم التطرق إليهما <strong>في</strong> درس الملف.‏Global.asa‏-‏‎3‎الأحداث:‏Application_OnEndApplication_OnStart••


أحداثApplication_OnStart and Application_OnEndالحدث:‏Application_OnStart‏-تحدث قبل إنشاء أول جلسة جديدة ‏(عندما يتم الرجوعمره.‏ وهذا الحدث يوضع <strong>في</strong> ملف.‏Globa.asaالحدث:‏Application_OnEnd‏-تحدث عندما يتم الإنشاء من التطبيق.‏سوف يتم التطرق إليهما <strong>في</strong> درس الملف.‏Global.asaإلى ال Object" "Applicationلأولالدرس العاشرالكائنServer Objectالكائن:‏Object Server‏-تستخدم للوصول إلى خصائص والمانهج الموجوده على السيرفر(الخادم.(‏‏-هناك خصائص ومنهاج لكائن Server Object وهي آالتالي-:‏‏-‏‎1‎الخصائص:‏الخاصيةScriptTimeout


الخاصية:‏ScriptTimeout‏-تسترجع أآبر عدد من الثواني للسكربات التي تستطيع تن<strong>في</strong>ذها قبل أن تنتهي.‏الصيغة:‏آودserver.scriptTimeout=(number of seconds)seconds: number of ‏-أآبر عدد من الثواني للسكربات تستطيع تن<strong>في</strong>ذها قبل أن ينتهيالسيرفر،‏ وقيمتها البدائية تساوي ٩٠ ثانية.‏‏-مثال:‏آود


شرح الكود:‏server.scriptTimeout=200: ‏-ال ScriptTimeout سوفتنتهي بعد ٢٠٠ ثانية.‏(response.write(server.scripttimeout: ‏-سوف تظهر قيمة الScriptTimeout.‏-‏‎2‎المناهج:‏Execute•HTMLEncode•MapPathURLEncode••المنهجExecuteالمنهج:‏Execute‏-تقوم بتن<strong>في</strong>ذ ملف ال Asp عن طريق ملف Aspآخر .الصيغة:‏


آودserver.Execute(path)path: ‏-تحدد موقع أو مكان ملف ال <strong>ASP</strong> المرا تن<strong>في</strong>ذه.‏مثال:‏ على تن<strong>في</strong>ذ ملف <strong>ASP</strong> <strong>في</strong> صفحة أخرى:‏‏-لنفترض بأن الصفحة الأولى تحتوي على هذا الكود وليكن اسمها:‏Execute.aspآود‏-والصفحة الثانية وليكن اسمها Result_execute.asp تحتوي على هذا الكود التالي-:‏آود


شرح الكود:‏execute.asp تقوم باستدعاء الملف ‏-سوف ("server.execute("execute.asp:وتقوم بتن<strong>في</strong>ذ ما بداخله.‏المنهجHTMLEncodeالمنهج:‏HTMLEncode‏-تقوم بتش<strong>في</strong>ر تطبيقات آود الHTML التي قمت بتحديدها.‏مثال:‏ على تش<strong>في</strong>ر آود ال:‏HTMLآود


شرح الكود:‏‏")المحيط العربيcolor='ffffff: server.HtmlEncode("


wwwroot. بوضع المسار داخل الملف الجذري ‏:‏Pathتقوم/script:wwwrootمثال:‏ لنفترض ، الملف Test.aspموجود على/‏c:InetpubآودالمنهجURLEncodeالمنهج:‏URLEncodeتقوم بتش<strong>في</strong>ر الرابط الذي تقوم بتحديده أنت.‏الصيغة:‏آود


Server.URLEncode(string)‏:‏Stringمجموعة الحروف التي تريد أن تقوم بتش<strong>في</strong>رها.‏مثال:‏ آي<strong>في</strong>ة تش<strong>في</strong>ر الرابط:‏آودالدرس الحادي عشرالكائن(<strong>ASP</strong>Error (<strong>ASP</strong> 3.0الكائن:‏‎3.0‎ (<strong>ASP</strong>Error (<strong>ASP</strong>‏-تستخدم لإظهار وتوضيح البيانات لأي خطأ حدث <strong>في</strong> سكربات صفحات ال <strong>ASP</strong>. وهذا الكائن يتمإنشائه عندما يتم استدعاء المنهجserver.Getlasterrorإليها فقط عن طريق هذا المنهج.‏، وهذهالأخطاء نستطيع الوصول


<strong>في</strong> الجدول التالي يوضح خصائص الكائن:‏<strong>ASP</strong>Errorالصيغة:‏آود<strong>ASP</strong>Error.<strong>ASP</strong>Code()<strong>ASP</strong>Error.<strong>ASP</strong>Description()<strong>ASP</strong>Error.Category()<strong>ASP</strong>Error.Column()<strong>ASP</strong>Error.Description()<strong>ASP</strong>Error.File()<strong>ASP</strong>Error.Line()<strong>ASP</strong>Error.Number()<strong>ASP</strong>Error.Source()


مثال:‏ <strong>في</strong> هذا المثال سوف أقوم بكتابة فقط الكود للتعامل مع هذه الخصائص:‏آودالدرس الثاني عشرالكائنAsp File System Objectالكائن:‏Object Asp File System


يستخدم لدخول نظام الملفات الموجوده على السيرفر،‏ وهذا الكائن يستطيع التعامل مع الملفاتوالمجلدات ومسارات الدليل.‏ أيضاً‏ إنه من الممكن استرجاع نظام البيانات للملفات مع هذا الكائن.‏هناك مناهج لكائن File System Objectوهي آالتالي-:‏ملاحظه ‏:عند إستخدامك لهذه المناهج قد لا تؤدي عمله،‏ وذلك يكون السبب <strong>في</strong> برامج الحمايه منال<strong>في</strong>روسات الموجوده على جهازك الخاص بك،‏ والحل لذلك فقط عليك وقف الفحص التلقائيلل<strong>في</strong>روسات وجعله يدوياً.‏المنهجBuildPathالمنهج:‏BulidPath‏-يقوم باضافة الاسم للمسار الموجود.‏الصيغة-:‏آود[newpath=] FileSystemobject.BuildPath(path,name)Path: ‏-تطلب،‏ المسار الذي يلحق الإسم إلى.‏name: ‏-تطلب،‏ الاسم الذي يلحق المسار


مثال:‏آودشرح الكود:‏‏:‏Fsمتغير وهو سوف يكون الخاص بالتعامل مع الملفات من خلال الجزئيةScripting.FileSystemObjectو التي تمكننا من الوصول للملفات من خلال نظام التشغيل.‏:‏Pathمتغير وقيمته تساوي ("path=fs.buildpath("c:mydocument","test: تعنيبأننا نريد بناء المسار.("‏c:mydocument","test‏")‏المنهجCopyFileالمنهج:‏CopyFile‏-ينسخ واحد أو أآثرملف من أي مكان إلى مكان آخر.‏


الصيغة:‏آودfilesystemobject.copyfile source,destination[,overwrite]‏:‏Sourceتحدد مسار الملف أو الملفات التي تريد أن تقوم بنسخها.‏‏:‏Destinationتحدد المكان الذي تريد أن تنسخ إليه الملفات.‏False بالكتابة فوق الملف الموجود،‏ أما إذا آانت آانت القيمهTrueيسمح ‏:‏Overwriteإذايمنع الكتابة فوقه،‏ والقيمه الافتراضيه له هي.‏Trueمثال:‏ آي<strong>في</strong>ة نسخ ملف من مكان إلى مكان آخر?‏آودشرح الكود:‏fs.copyfile: ‏-هذا المنهج يستخدم لنسخ ملفات من مكان لمكان.‏c:mydocumentsweb*.htm: ‏-تحدد مسار المجلد الذي يحتوي على الملفات التي تريد


نسخها.‏"c:webpages: ‏-تحدد مسار المجلد الذي تريد أن تنسخ إليه الملفات.‏المنهجCopyFolderالمنهج:‏CopyFolder‏-ينسخ واحد أو أآثر مجلد من أي مكان إلى مكان آخر.‏الصيغة:‏آودfilesystemobject.copyfolder source,destination[,overwrite]‏:‏Sourceتحدد مسار المجلد أو المجلدات التي تريد أن تقوم بنسخها.‏‏:‏Destinationتحدد المكان الذي تريد أن تنسخ إليه المجلدات.‏‏:‏Overwriteإذا آانت القيمهTrueيسمح بالكتابة فوق الملف الموجود،‏ أما إذا آانت False يمنعالكتابة فوقه،‏ والقيمه الافتراضيه له هي.‏Trueمثال:‏ آي<strong>في</strong>ة نسخ جمبع المجلدات من مكان إلى مكان آخر؟آود


شرح الكود:‏fs.copyfolder: ‏-هذا المنهج يستخدم لنسخ المجلدات من مكان لمكان.‏c:mydocumentsweb.: ‏*-تحدد مسار المجلد الذي يحتوي على الملفات التي تريدنسخها،و*‏ تحدد جميع المجلدات بداخل المجلد.‏Webc:webpages: ‏-تحدد مسار المجلد الذي تريد أن تنسخ إليه المجلدات.‏مثال:‏ آي<strong>في</strong>ة نسخ مجلد واحد من مكان إلى مكان آخر؟<strong>في</strong> هذا المثال سوف يتم نسخ المجلد test إلى المجلد.‏Webpagessآود


المنهجCreateFolderالمنهج:‏CreateFolder‏-يقوم بعملية انشاء مجلد جديدالصيغة:‏آودfilesystemobject.createfolder (name)‏:‏nameتحدد اسم المجلد الذي تريد أن تنشاهمثال:‏ آي<strong>في</strong>ة إنشاء مجلد؟آود


شرح الكود:‏fs.createfolder: ‏-هذا المنهج يستخدم لإنشاء المجلدات.‏c:myweb: ‏-تضع اسم المجلد الذي تريد انشاءه وتحدد المسار الذي سوف تضعه به.‏c:webpages: ‏*-تحدد مسار المجلد الذي تريد أن تنسخ إليه المجلدات.‏المنهجCreateTextFileالمنهج:‏CreateTextFile‏-تنشأ ملف نصي <strong>في</strong> المجلد الحالي وتسترجع الكائن TextStream الذي يستخدم للقراة والكتابةمن الملف.‏الصيغة:‏آودfilesystemobject.createtextfile(filename[,overwrite[,unicode]])name: fileاسم الملف الذي أنشأته.‏False الملف تستطيع الكتابة عليه،‏ أما إذا آانت القيمة فإن آانت القيمةTrue ‏:‏overwriteإذافإنكلا تستطيع الكتابة عليها،‏ والقيمة البدائية تكون.‏True‏:‏Unicodeإذا آانت القيمة True تعني بإن الملف أنشأ آرمز،‏ أما إذا آانت القيمة False فإنهتعني أن الملف أنشأ آملف ASCII. والقيمة البدائية تكون.‏False


مثال:‏ آي<strong>في</strong>ة إنشاء ملف والكتابة عليه؟آودt ال ‏-تحتوي t.writeline:شرح الكود:‏createtextfile: ‏-تستخدم لإنشاء ملف.‏على الملف الذي تم إنشاءه،‏ writelineتستخدم للكتابة علىالملف.‏ملاحظة ‏:ليس من الشرط ان يكون امتداد الملفاتtxt ، ممكن أن تضع أي امتداد أنت تختاره.‏المنهجDeleteFile


المنهج:‏DeleteFile‏-تحذف واحد أو أآثر من الملفات المحددة.‏الصيغة:‏آودfilesystemobject.deletefile(filename[,force])name: fileاسم الملف أو الملفات التي تريد أن تقوم بحذفها.‏‏:‏Forceإذا آانت القيمة صحيحة فإنه سوف يتم حذف الملف،‏ أما إذا آانت القيمة False أي أنالملف ليس للحذف.‏ والقيمة البدائية تكون.‏Falseمثال:‏ آي<strong>في</strong>ة حذف ملف وفحص هل الملف موجود أم لا؟آود


شرح الكود:‏fileExists: ‏-سوف تقوم بتحديد إذا آان الملف موجود ام لا.‏then: if fs.fileExists("c:somefile.txt") ‏-إذا آان الشرط الملف موجود نفذ الشرط("fs.deletefile("c:somefile.txt.deletefile: ‏-تستخدم لحذف الملفات.‏المنهجDeleteFolderالمنهج:‏DeleteFolder‏-تحذف واحد أو أآثر من المجلدات المحددة.‏الصيغة:‏آودfilesystemobject.deletefolder(filename[,force])name: fileاسم المجلد أو المجلدات التي تريد أن تقوم بحذفها.‏‏:‏Forceإذا آانت القيمة صحيحة فإنه سوف يتم حذف المجلد،‏ أما إذا آانت القيمة False أي أنالمجلد ليس للحذف.‏ والقيمة البدائية تكون.‏Falseمثال:‏ آي<strong>في</strong>ة حذف مجلد وفحص هل الملف موجود أم لا؟


قم بإنشاء مجلد وسمه webpages وضعه داخل القرص الصلب:‏cآود


المنهجDriveExistsالمنهج:‏DriveExists‏-تفحص إذا آائن القرص الصلب موجود أو لا.‏الصيغة:‏آودfilesystemobject.driveExists(drive)‏:‏Driveاسم القرص المحدد للفحص.‏مثال ‏:آي<strong>في</strong>ة معرفة إذا آان القرص المحدد موجود أو غير موجود؟آود


شرح الكود:‏DriveExists: ‏-سوف تقوم بالفحص إذا آان القرص موجود ام لا.‏then: if fs.driveExists("c:")=true ‏-إذا آان القرص موجود نفذ الشرط.‏المنهجFileExistsالمنهج:‏FileExists‏-تفحص إذا آائن الملف موجود أو لا.‏الصيغة:‏آودfilesystemobject.FileExists(filename)‏:‏Filenameاسم الملف المحدد للفحص.‏مثال:‏ آي<strong>في</strong>ة معرفة إذا آان الملف المحدد موجود أو غير موجود؟قم بإنشاء الملف somefile.txt على القرص الصلب :c ثم شاهد النتيجة:‏آود


المنهجFolderExistsالمنهج:‏FolderExists‏-تفحص إذا آائن المجلد موجود أو لا.‏الصيغة:‏آودfilesystemobject.FolderExists(filename)‏:‏Filenameاسم المجلد المحدد للفحص.‏


مثال:‏ آي<strong>في</strong>ة معرفة إذا آان المجلد المحدد موجود أو غير موجود؟قم بإنشاء المجلد webpages على القرص الصلب c ثم شاهد النتيجة:‏آودالمنهجGetAbsolutePathNameالمنهج:‏GetAbsolutePathName‏-تسترجع المسار المكمل الجذري للقرص الصلب للمسار المحدد.‏الصيغة:‏آود


filesystemobject.GetAbsolutePathName(path)‏:‏Pathلتحديد المسار الكامل للجذر.‏مثال :آود: getabsolutepathname("c‏:")سوف تقوم بتحديد المسار للقرص c وسوف تكونالقيمة الافتراضية للمسار هي ملفات.‏ Systemمثال :آود


يوجد ملف بهذا الاسم تأآد من اسم لاالمنهجGetBaseNameالمنهج:‏GetBaseName‏-تسترج الاسم الأساسي للملف أو المجلد المحدد.‏الصيغة:‏آودfilesystemobject.GetBaseName(path)‏:‏Pathالمسار للمجلد او الملف الذي سوف يتم استرجاع اسمه.‏مثال :


آودشرح الكود:‏‏:‏getbasename("c:somefile.txt‏")تستخدم لإرجاع اسم الملف أو المجلد من المسارالمحدد.‏المنهجGetDriveالمنهج:‏GetDrive‏-تسترجع الكائن Drive تبعا لي القرص المحدد <strong>في</strong> المسار.‏الصيغة:‏آودfilesystemobject.GetDrive(drivespec)


، او بهذا الشكل(‏c‏:)‏ ، أو يكتب هكذا(‏c‏:)‏ ، آتابة القراص بين قوسين(‏c‏)‏ ‏:‏drivespecيستطيعأو أي مواصفات شبكة مشترآة.(\‏ (computer2share1مثال :آودالمنهجGetDrivenameالمنهج:‏GetDrivename‏-تسترجع اسم القرص من المسار المحدد.‏الصيغة:‏


آودfilesystemobject.GetDrivename(path)‏:‏pathالمسار المحدد الذي سوف يسترجع اسم القرص.‏مثال :آودالمنهجGetExtensionNameالمنهج:‏GetExtensionName‏-تسترجع اسم امتداد الملف الموجود للمسار المحدد .الصيغة:‏آود


filesystemobject.GetExtensionName(path)‏:‏pathالمسار المحدد الذي سوف يسترجع اسم امتداد الملف.‏مثال :آودآودالمنهجGetFileالمنهج:‏GetFile


‏-تسترجع الكائن File للمسار المحدد.‏الصيغة:‏آودfilesystemobject.GetFile(path)‏:‏pathالمسار المحدد للملف.‏مثال :آود


شرح الكود:‏datelastmodified: ‏-تظهر أخر تاريخ ووقت تم تعديل على الملف.‏المنهجGetFileNameالمنهج:‏GetFileName‏-تسترجع اسم الملف او المجلد لآخر مرآب <strong>في</strong> المسارالمحدد .الصيغة:‏آودfilesystemobject.GetFileName(path)‏:‏pathالمسار المحدد للملف او المجلد.‏مثال :آود


s=fs.getfilename("c: est est")response.write("")response.write(d &""&s)response.write("")set fs=nothing%>المنهجGetFolderالمنهج:‏GetFolder‏-تسترجع الكائن Folder للمسار المحدد .الصيغة:‏آودfilesystemobject.GetFolder(path)‏:‏pathالمسار المحدد للمجلد.‏


مثال :قم بإنشاء المجلد webpages على الجهاز الخاص بك على القرص c وبعدها شاهد النتيجة.‏آودالمنهجGetParentFoldernameالمنهج:‏GetParentFolderName‏-تسترجع الاسم من الدليل الرئيسي المجلد لآخر مرآب <strong>في</strong> المسار المحدد .


الصيغة:‏آودfilesystemobject.GetParentFolderName(path)‏:‏pathالمسار للملف أو المجلد لمعرفة الدليل الرئيسي للمجلد <strong>في</strong> المسار المحدد.‏مثال :آودالمنهجGetSpecialFolder


المنهج:‏GetSpecialFolder‏-تسترجع مسار لبعض مجلدات الوندوز.‏الصيغة:‏آودfilesystemobject.GetSpecialFolder(Foldername)‏:‏Foldernameالمجلد الذي سوف يتم استرجاعه،‏ عندما تكون القيم التالية:‏0=WindowsFolder - Contains files installed by the Windowsoperating system1=SystemFolder - Contains libraries, fonts, and device drivers2=TemporaryFolder - Used to store temporary filesمثال :آود


c=fs.getspecialfolder(2)response.write(""&d&""&s&""&c)response.write("")set fs=nothing%>المنهجGetTempNameالمنهج - GetTempName:تقوم باسترجاع ملفات أو مجلدات عشوائية من قائمة ملفاتالانترنت المؤقته.‏الصيغة:‏آودfilesystemobject.GetTempNameمثال :آود


المنهجMoveFileالمنهج:‏MoveFile‏-تنقل واحد أو أآثر من ملف من مكان واحد إلى آخر.‏الصيغة:‏آودfilesystemobject.MoveFile (source,destination)


‏:‏Sourceمسار الملف أو الملفات التي سوف يتم نقلها.‏‏:‏Destinationالمكان الذي سوف يتم نقل الملفات إليه.‏مثال :قبل مشاهدة النتيجة،‏ قم بإنشاء مجلدين المجلد الأول اسمه Web وضع بداخله صور امتدادهاgifوالمجلد الثاني اسمه Images وضعهما على القرصc،آودالمنهجMoveFolderالمنهج:‏MoveFile‏-تنقل واحد أو أآثر من مجلد من مكان واحد إلى آخر.‏الصيغة:‏


آودfilesystemobject.MoveFolder (source,destination)‏:‏Sourceمسار المجلد أو المجلدات التي سوف يتم نقلها.‏‏:‏Destinationالمكان الذي سوف يتم نقل المجلد إليه.‏مثال :قبل مشاهدة النتيجة قم بإنشاء مجلدين المجلد الأول اسمه Webpagesوضعهما على القرص.‏cوالثاني Imagesآودأرجو من االله أن لاتنسوا من جمعة بدعاء بظهر الغيب

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!