- محب منبجالمدير العام
عدد الرسائل : 72
تاريخ التسجيل : 02/05/2009
تعلم ASP
الخميس فبراير 14, 2013 2:15 am
تعلم ASP
سأقوم معكم برحلة تعليمية بسيطة.. سنتعلم من خلالها كيفية استخدام هذه اللغة، وسأخبركم سر عنها ..
إنها سهلة جدا وليست معقدة. وسنتعلمها بإذن الله بكل سهولة ويسر.. وسأستخدم مشروعا صغيرا خلال
الرحلة لتطبيق ما نتعلمه من اللغة على المشروع بذلك سننتهي معا بموقع جاهز يعمل بهذه اللغة صممناه
السهلة والرائعة. ASP بأنفسنا، مستعدون ؟ ..( : إذا هيا نتوكل على الله ونبدأ رحلتنا التعليمية للغة
؟ ASP ما الحاجة لاستخدام
أو أحد برامج التصميم التي تمكنك من عمل ما تشاء HTML يمكنك تصميم صفحات رائعة باستخدام لغة
لشركة Dreamwaver أو Microsoft FrontPage كبرنامج HTML (تقريبا (ثم تحويل عملك للغة
ASP?!! إذن لماذا أضيع وقتي بتعلم Macromedia.
تكون ثابتة بمعنى أنك ما تكتبه في الصفحة سيظهر لك عند HTML المعلومات الظاهرة في صفحات
العرض .. مثل برنامج الوورد .. الذي تكتبه تراه .. ولكن ماذا إذا كانت عندك سجلات كبيرة من البيانات
وتريد أن تعرضها في الصفحة.. مثل ملاحظات سجل الزوار.. أو أسماء المشتركين في منتداك أو معلومات
أخرى مخزنة في قواعد بيانات مثل ميكروسوفت اكسس.
عرض هذه البيانات في الشاشة باستخراجها مباشرة من قواعد البيانات ASP تستطيع باستخدام صفحة
عن ASP وتتميز صفحات HTML . المخزنة فيها البيانات بدلا من تخزين هذه البيانات على صفحات
بكونها صفحات غير ثابتة المعلومات.. فالمعلومات بها مؤخذة من قواعد البيانات وتتغير في HTML
الصفحة بتغير المعلومات في قواعد البيانات وسأطلق هذه الميزة كلمة صفحات تفاعلية أي أنا تتفاعل
وتتأثر في الصفحة بتأثر وتغير المعلومات في قواعد البيانات. ومن الأمثلة على هذه الصفحات.. غرف
قوائم المشتركين.. ، Guest Book سجل الزوار ، Discussion Board المنتديات ، Chat الحوار
وغيرها من الصفحات التي تتطلب استقبال وإرسال المعلومات.
ASP : متطلبات العمل على لغة
Internet Information Server أو Personal Web Server أولا : تركيب
وغيرها، لا تعمل مباشرة على الأجهزة CGI و PHP و ASP اللغات المتقدمة لبرمجة المواقع أمثال
حتى تعمل. بإمكانك حجز مساحة (مجانية أو باشتراك شهري) في أحد Server الشخصية. فهي تحتاج ل
أنصح بالاشتراك Servers ( فأجهزتهم عبارة عن Hosting Providers مواقع الاستضافة في الإنترنت
وقواعد بيانات ASP فهو يقدم مساحة مكانية تدعم لغة http://www1.domaindlx.com في موقع
لكن ذلك ليس نهاية المطاف، فتكلفة الاتصال بالإنترنت مكلفة في بعض البلدان، وتصميم MS Access).
الموقع أثناء الاتصال، قد يكلف الكثير من الأموال. لذا، بإمكانك تركيب بعض البرامج التي تجعل من حاسبك
Server. الشخصي
لمستخدمي ويندوز ٩٨ أو ويندوز ملينيوم : •
وتركيبه في غاية البساطة.. كل ما عليك هو فتح Personal Web Server (PWS) قم بتركيب برنامج
سيتم setup.exe ( ومنه شغل الملف pws ومنه add-one 98 واختر المجلد Win98 CD قرص ويندوز
شرح هذا الأمر بالتفصيل في الدرس التالي.(
asp. في قرص الويندوز ٩٨ فابحث عن مجلد باسم pws ملاحظة: إن لم تجد مجلد باسم
إن لم لكن لديك قرص ويندوز ٩٨ يمكنك سحب البرنامج من هذا الرابط:
http://www.alnoor-world.com/download/PWS.zip
NT : لمستخدمي ويندوز 2000 أو •
للويندوز وستجده كخدمة متوفرة مع سيدي تركيب Internet Information Server قم بتركيب خدمة
ثم اختيار إضافة وإزالة مكونات ويندوز Control Panel الويندوز، وذلك بالذهاب لي لوحة التحكم
منه. Internet Information Server واختيار Add/Remove Windows Components
ASP : ثانيا : إختيار برنامج لكتابة نصوص
لا تحتاج بالضرورة لاستخدام برنامج خاص لذلك. سأستخدم خلال الشرح برنامج ASP لكتابة نصوص
لأنه متوفر عند الأغلبية ونستطيع باستخدامه تصميم شكل الصفحات ، وإن أردتم استخدام Front Page
الذي يأتي مع NotePad برامج أخرى تستطيعون أيضا متابعة الدروس معنا. إن كنت تريد استخدام برنامج
لأنه لن يساعدك في تصميم Note Pad الويندوز يمكنه القيام بالواجب. إلا أنني لا أنصحك حاليا باستخدام
أو Microsoft Front Page شكل الصفحة. كذلك تستطيع استخدام أي برامج تصميم صفحات الويب مثل
ASP المتخصص في إنشاء صفحات Microsoft Interdev أو ،Macromedia DreamWeaver
ولغات غيرها .
إن كنت لا تملك برنامجا أخر للتصميم ، Front Page إذا قم بتركيب
ثالثا: برنامج قواعد البيانات:
أو غيرها من برامج قواعد البيانات.. لكنني سأعتمد على Microsoft Access أو SQL يمكننا استخدام
وذلك لتوفره عند الأغلبية. Microsoft Access 2000
بذلك نكون قد تجهزنا للبدء في كتابة النصوص : ).. وأتمنى منكم المتابعة للتعلم.
لنبدأ معنا
إنني مؤمن بأن أفضل طريقة لتعلم هذه اللغة هو القيام بأمثلة عملية.. لذا لن أتحدث عن المتغيرات أو
الأوامر أو القيم إلا عندما نحتاجها لتصميم إحدى الصفحات.
ولنتأكد من تطبيقنا السليم للغة.. سنبدأ بمشروع من الصفر، خطوة بخطوة.. وعند نهاية هذه الدروس
ستكون قادرا على تصميم مشروعا مشابها، ومن ثم تطويره إن شاء الله.
مشروعنا سيكون، تصميم موقع إخباري بسيط.
أولا: المحتوى:
١. أخبار تقنية .
٢. أخبار منوعة .
ثانيا: الخدمات:
١. محرك بحث في محتويات الموقع .
٢. سجل زوار .
ثانيا:الإدارة:
١. تسجيل المسؤولين عن الموقع (أسماء وكلمات مرور خاصة بهم .(
٢. إضافة، تعديل، حذف الأخبار من خلال الموقع .
تنفيذ هذا الموقع الإخباري، يتطلب منا تعلم مجموعة من أهم أوامر هذه اللغة.. وهذا هو الغرض من هذه
الدروس .فهل أنت مستعد ومتحمس ؟! إذا أرجو منك المتابعة وسنصل إلى موقع رائع في النهاية.
إذا خذ قسطا من الراحة.. وابدأ بتجهيز البرامج التي أخبرتك عنها في الأعلى.. ثم تابع الدروس التالية..
وأنا في انتظاركهناك.
Personal Web Server - PWS تركيب
وستجد هنا خطوات مدعمة بالصور لتسهيل عملية تركيب ASP ضروري لتشغيل صفحات PWS إن تركيب
40 MB 20 و – 30 MB RAM 90 و MHz يتطلب البرنامج على الأقل معالج بينتيوم بسرعة PWS.
فارغة في القرص الصلب.
في مشغل الأقراص . Windows ١. أدخل قرص 98
Run واختر تشغيل Start ٢. اضغط على قائمة ابدأ
x:\add-ons\pws\setup.exe ٣. اكتب
بحرف مشغل الأقراص بجهازك . X ٤. أبدل حرف
ستظهر لك الشاشة التالية:
Custom ثم من الشاشة التالية اضغط على Next اضغط على
"Show ثم اضغط على "Personal Web Server (PWS)" من الشاشة التالية اختر
Subcomponents…"
"Show Subcomponents…" ثم اضغط على "Documentation” من الشاشة التالية اختر
Next ثم Ok ثم مرة أخرى Ok ثم اضغط على "Active Server Pages” من الشاشة التالية اختر
للانتقال لخطوة التالية من عملية التثبيت.
ستظهر لك الشاشة التالية.. أفضل إبقاء كل شي على ما هو عليه، إلا أن هذا الأمر راجع إليك.
ستبدأ عملية التثبيت.
بعد الانتهاء منها سيطلب منك إعادة تشغيل الجهاز. عندما تفعل ذلك ستلاحظ أن هنالك شيئا جديدا أضيف
هذا يعني أن التركيب قد تم بنجاح. تهانينا. Taskbar. بجانب الساعة في شريط المهام
طريقة سريعة لاختبار ذلك، اذهب للعنوان التالي (يفضل الاحتفاظ بهذا العنوان في قائمة المواقع المفضل
وستظهر لك الشاشة التالية : Favorites) http://localhost/iishelp
!
ملاحظات:
إن لم لكن لديك قرص ويندوز ٩٨ يمكنك سحب البرنامج من هذا الرابط: •
http://www.alnoor-world.com/download/PWS.zip
إن لم ترغب بتخزين هذا البرنامج على جهازك. فبإمكانك حجز مساحة مجانية من هذا الموقع •
لكن ذلك سيتطلب تجربة الصفحات التي سنصممها، على . http://www1.domaindlx.com
الإنترنت مباشرة، ولن يمكن تشغيل الصفحات على الكمبيوتر.
default.asp الصفحة الأولى
في الموقع لتشغیلها Index أو Default عن صفحة تحمل اسم (Browser) دائما ما یبحث برنامج التصفح
: Default . تلقائیا. لذا عادة ما تكون الصفحة الرئیسیة في الموقع بهذا الاسم. وفي مشروعنا سنستخدم اسم
قم بتصمیم ما یعجبك.. مع مراعاة وضع عنوان الصفحة بشكل بارز، ورابط لكل من Frontpage باستخدام
وآخر ،(guest.asp) ورابط لسجل الزوار ،(news.asp) والأخبار المنوعة ، (tech.asp) الأخبار التقنیة
ولا تنسى أن تكتب فقرة (admin.asp). وأخیرا رابط لقسم إدارة الموقع ،(search.asp) لمحرك البحث
C:\Inetpub\wwwroot\news ترحیبیة بالزوار .وخزن جمیع هذه الملفات في
ملاحظة: هذه بعضالمواقع التي تشرح لك كیفیة التصمیم بالفرونت بیج :المصمم لك ، أجنادین.
ثم قم أنت بإنشاء المجلد C:\Inetpub\wwwroot سیتم إنشاء هذه المجلدات PWS ملاحظة: عند تركیب
لتخزین ملفات مشروعنا هذا فیه. news
التصمیم المقترح:
عالم الیوم
للتصمیم المقترح. (استخدام هذا النصسیسهل علیك متابعة الدروس.( HTML هذا هو نص
<html dir=rtl>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1256">
<meta http-equiv="Content-Language" content="ar-qa">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title> الیوم عالم </title>
</head>
<body>
<p align="center"><img border="0" src="thetitel.gif"></p>
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<hr>
<p align="center"><font face="Simplified Arabic" size=" مرحبا <" 3
بكم في
موقعنا الإخباري المتمیز </font></p>
<p align="center"><font face="Simplified Arabic" size=" نتمنى <" 3
لكم
المتعة والفائدة معنا </font></p>
<p align="center"><font face="Simplified Arabic" size=" مع <" 3
تحیات </font></p>
<p align="center"><font face="Simplified Arabic" size="3"
color="#AD إدارة<" 1212
الموقع </font></p>
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<p align="center"><b><font face="Simplified Arabic"
size=" جمیع<" 2
الحقوق محفوظة ٢٠٠١ </font></b></p>
</body>
</html>
SSI استخدام
للاستغناء عن تكرار تصمیم الأجزاء المتشابهة في كل صفحة.. مثل الجزء العلوي من الصفحة.. أو مؤخرة
لوضع الجزء المراد تكراره في ملف SSI الصفحة والتي تحتوي على حقوق الحفظ .. نستطیع استخدام میزة
واحد فقط.. وإضافة اسم الملف في الملفات المراد تكرار الجزء فیها.
على سبیل المثال: سنعتمد تصمیما واحدا لجمیع الصفحات.. ففي رأس الصفحة عنوان الموقع، وتحته روابط
للأقسام المختلفة.. وفي نهایة الصفحة الروابط من جدید.
ببساطة، یمكنك نسخ نفس النصلجمیع الصفحات.. الرأس:
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1256">
<meta http-equiv="Content-Language" content="ar-qa">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title> عالم الیوم </title>
</head>
<body>
<p align="center"><img border="0" src="thetitel.gif"></p>
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<hr>
نهایة الصفحة:
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<p align="center"><b><font face="Simplified Arabic"
size=" جمیع<" 2
الحقوق محفوظة ٢٠٠١ </font></b></p>
</body>
</html>
ثم كتابة ما تریده ما بین هاتین الفقرتین.
للتوضیح أكثر، سأضح النصكاملا مرة أخرى، الجزء العلي سأضعه باللون الأخضر، والسفلي باللون الأرق،
والجزء الرئیسي سیكون باللون الأسود. هذا هو النص:
<html dir=rtl>
الجزء العلوي '
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1256">
<meta http-equiv="Content-Language" content="ar-qa">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title> عالم الیوم </title>
</head>
<body>
<p align="center"><img border="0" src="thetitel.gif"></p>
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<hr>
الجزء الرئیسي '
<p align="center"><font face="Simplified Arabic" size=" مرحبا <" 3
بكم في
موقعنا الإخباري المتمیز </font></p>
<p align="center"><font face="Simplified Arabic" size=" نتمنى <" 3
لكم
المتعة والفائدة معنا </font></p>
<p align="center"><font face="Simplified Arabic" size=" مع<" 3
تحیات </font></p>
<p align="center"><font face="Simplified Arabic" size="3"
color="#AD إدارة<" 1212
الموقع </font></p>
الجزء السفلي '
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> منوعة أخبار </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> الزوار سجل </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<p align="center"><b><font face="Simplified Arabic"
size=" جمیع<" 2
الحقوق محفوظة ٢٠٠١ </font></b></p>
</body>
</html>
الأمر سهل للغایة ألیس كذلك؟! إنه سهل هذه المرةلأن عدد الصفحات لدینا بسیط.. الصفحة الرئیسیة، الأخبار
التقنیة، الأخبار المنوعة، بحث، سجل الزوار.. أي خمس صفحات.. لكن تخیل أن عندنا ١٠٠ صفحة.. هل
ستقوم بعملیة النسخ واللصق لكل هذه الصفحات!! وإن قمت بذلك.. تخیل أنك ترید إجراء تعدیل معین في
تصمیم رأس الصفحة أو نهایتها، هل ستفتح ال ١٠٠ صفحة وتقوم بتعدیلها واحدة واحدة!! ألن یكون الأمر
شاقا علیك!! إلیك الحل.
pagefooter.txt والجزء الأسفل باسم pageheader.txt قم بحفظ الجز الأعلى في ملف اسمه
لتكون الشفرة فیه كالتالي: default.asp أجرِ تعدیلا التالیة على ملف
<html dir=rtl>
<!--#include file="pageheader.txt" -->
<p align="center"><font face="Simplified Arabic" size=" مرحبا <" 3
بكم في
موقعنا الإخباري المتمیز </font></p>
<p align="center"><font face="Simplified Arabic" size=" نتمنى <" 3
لكم
المتعة والفائدة معنا </font></p>
<p align="center"><font face="Simplified Arabic" size=" مع <" 3
تحیات </font></p>
<p align="center"><font face="Simplified Arabic" size="3"
color="#AD إدارة<" 1212
الموقع </font></p>
<!--#include file="pagefooter.txt" -->
شغل الصفحة.. وستراها بنفس التصمیم الأول.. والآن.. یمكن إدراج الرأس والنهایة لكل الصفحات الأخرى
(التي سنصممها قریبا) من دون الحاجة لنسخ الشفرة في كل مرة.. وإن أردنا إجراء أي تغییر في المستقبل،
كل ما علینا هو إجراء التغییر على أحد هذین الملفین.. والتغییر سیطبق تلقائیا على جمیع الصفحات.
project.mdb تصميم قاعدة البيانات للمشروع
إن لم Microsoft Access كما ذكرت في الفصل الأول، سنصمم قاعدة البيانات باستخدام برنامج . 2000
تكن لديك خبرة سابقة في التعامل مع هذا البرنامج فلا تخشى شيئا، فسأكون معك خطوة بخطوة.
١- شكل ٤
سيطلب منك حفظ قاعدة البيانات، اختر لها اسما واحفظها Ok. واضغط Blank Access database اختر
أو المجلد الفرعي الذي خصصته لهذه الصفحة بداخل هذا المجلد. C:\Inetpub\wwwroot في
سيتم إكمال الدروس news ( بداخل المجلد الفرعي database ويفضل أن تحفظ بداخل مجلد فرعي باسم
اعتمادا على هذا الافتراض.(
!Error
4-1- شكل 1
project.mdb وسنسمي القاعدة هنا
!Error
4-2- شكل 2
ستظهر لك الشاشة التالیة: Create بعد الضغط على زر
٢- شكل ٤
وصمم الجدول التالي Create table in Design view اختر
٣- شكل ٤
– Text, Memo, AutoNumber) وهذا الجزء يتغير بتغير نوع الحقل Field Properties ( في قسم
وعادة ما يكون الرقم الموجود ٥٠ . هذا الجزء هو الذي يحدد عدد Text إن كان الحقل Field Size ستجد
الحروف التي بإمكانك إدخالها في هذا الحقل، لذا أنصح بتغييرها ل ٢٥٥ وهو الحد الأقصى.
أي لا يمكن ترك هذا الحقل فارغ. بإمكانك No وعادة يكون أمامها Allow Zero Length أيضا ستجد
أي يمكن ترك هذا الحقل فارغ من البيانات. Yes وضع
سيسألك عن اسم الجدول، بإمكانك اختيار أي اسم يعجبك. في مشروعنا الحالي سنسميه Save اضغط على
No ثم ستظهر لك الرسالة التالية اختر منها tech_news.
!Error
٤- شكل ٤
٢). اضغط على اسمه مرتين لفتحه. سيظهر لك الشكل - أغلق الجدول، وسترى اسمه موجود في (شكل ٣
التالي
4- شكل 5
سيتم ترقيمها تلقائيا( id أدخل البيانات التالية في الجدول (خانة
30/9/2001 1 مايكروسوفت
تنجو من
محاولة
تفكيكها
سحبت الولايات الثمانية عشر الدعوى التي
رفعتها على شركة مايكروسوفت، مطالبة
المحكمة بتفكيك الشركة لكونها محتكرة
لسوق البرمجيات.
31/9/2001 2 اختراق مواقع
حركة طالبان
على الإنترنت
بعد عملية تفجير برجي التجارة العالمية
بنيويورك، ورفض حركة طالبان تسليم بن
لادن للولايات المتحدة الأمريكية، قام
مجهولون باختراق مواقع الحركة على
الإنترنت.
أغلق الجدول، واحفظ القاعدة.. واستعد للدرس القادم الذي سأبين فيه كيفية استعراض محتويات القاعدة
عن طريق الموقع.
في المرة التالية، ستظهر لك الشاشة التالية: Ms Access ملاحظة: عند فتح برنامج
يمكنك اختيار القاعدة التي أنشاءناها في هذا الدرس من خلال هذه الشاشة مباشرة.
بقاعدة البیانات ASP ربط صفحات
وفي هذا الدرس، Microsoft Access صممنا في الدرس السابق قاعدة بيانات باستخدام برنامج . 2000
واستعراض محتوياتها. ASP سنتعلم كيفية ربط القاعدة بصفحات
(tech.asp). لإجراء بعض التعديلات عليها. لذا قم بحفظها باسم (default.asp) قم بفتح الصفحة الأولى
tech.asp فكل التغييرات التي سنقوم بهذا ستكون على ملف
في الصفحة الأولى كنا قد كتبنا جملة ترحيبية لزوار الموقع. أما في هذه الصفحة فسنستبدلها بجملة أخرى
تبين ماهية الصفحة. فسنكتب:
إليكم آخر المستجدات على الساحة التقنية
ASP . والآن.. سنبدأ بالجزء الأهم.. وهو كتابة نصوص
واكتب الجملة HTML تكتب دائما بين هاتين العلامتين. <% %> لذا، افتح نصوص ASP نصوص
التالية في أول سطر:
<%@ Language=VBScript CodePage = "1256"%>
في هذه الصفحة. وسطر (تحديد اللغة) يجب أن يكون VBScript هذا السطر يشير إلى أننا سنستخدم لغة
دائما في بداية الصفحة.
واكتب التالي تحت الجملة الترحيبية:
<%
Dim ConnectionString
Dim ADO
ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" &
Server.MapPath("\database\project.mdb")
Set ADO=Server.CreateObject("ADODB.Connection")
ADO.ConnectionString =ConnectionString
ADO.Open
%>
يتم فيها تحديد المتغيرات، وسنتحدث عن المتغيرات أكثر في (Dim): السطران الأول والثاني •
المستقبل.
يحدد طريقة فتح قاعدة البيانات، واسم القاعدة والمسار (ConnectionString): السطر الثالث •
إليها. يمكنك تغيير اسم القاعدة ومسارها بما يتناسب مع ما قمت به على جهازك. لقد قمت
وما قبل الاسم هو مسار الوصول إليها. project.mdb بتسمية القاعدة
ADO يحدد اسم المتغير الذي سيقوم بالربط.. وهو في مثالنا (Set ADO): السطر الرابع •
ويمكنك تغييره بما يناسبك، إلا أن عليك استخدامه كثيرا، لذا لا أفضل تغييره حتى لا يسبب لك
بعض الصعوبة في متابعة الدروس.
السطران الخامس والسادس: يقومان بفتح القاعدة. •
ما قمنا به حتى هذه الخطوة، هو الوصولللقاعدة فقط. والخطوة التالية هي الوصول للبيانات التي
مباشرة: ADO.open بالقاعدة. ولعمل ذلك قم بكتابة التالي تحت عبارة
selectSQL="select * from tech_news"
set rs=ADO.execute(selectSQL)
وفيها يثم اختيار البيانات من القاعدة Select تحدد أمر الاختيار (selectSQL): السطر الأول •
حسب شروط يتم تحديدها. في حالتنا هذه طلبنا اختيار:
١. جميع البينات) ويمثلها رمز , (* ويمكن استبدالها باسم عمود او خانة معية من الجدول.
tech_news ٢. من جدول
أي أن هذان هما الشرطان الواجب القيام بهما.
تنفيذ الأمر. (set rs): السطر الثاني •
ما قمنا به حتى الآن هو فتح القاعدة، واستدعاء البيانات منها. وما سنقوم به الآن هو طباعة هذه
مباشرة: set rs=ADO.execute(selectSQL) المعلومات. قم بكتابة التالي تحت عبارة
response.write " العنوان : " & rs("subject")
response.write " التاریخ : " & rs("add_dat")
response.write " الخبر : " & rs("body")
تمثل النتائج. حيث يكتب اسم الجدول المراد عرض ، rs(*) ، تقوم بطباعة النتائج response.write
بياناته بين علامات التنصيص " "
وفي شريط العنوان Explorer Internet وذلك بفتح المتصفح tech.asp قم بتشغيل الصفحة
اكتب العنوان الموقع، وذلك بكتابة اسم جهازك ومن ثم المجلد الذي يحتوي الموقع: Address Bar
default.asp/news/http://asp
في العنوان تمثل اسم الجهاز، وهذا الاسم يختلف من جهاز لآخر. لمعرفة اسم جهازك، ASP : ملاحظة
لترى: Identification واختر Network ومنها افتح الشبكة Panel Control افتح لوحة التحكم
Computer Name
أي أن العنوان سيصبح كالتالي: localhost يمكنك الاستعاضة عن اسم الجهاز بكلمة
http://localhost/news/default.asp
ستظهر صفحة عالم اليوم بالشكل التالي:
عالم اليوم
فاضغط على رابط :أخبار تقنية. لترى النتيجة:
إليكم آخر المستجدات في الساحة التقنية
٢٠٠١ الخبر : بعد عملية /٩/ العنوان : اختراق مواقع حركة طالبان على الإنترنتالتاريخ : ٣١
تفجير برجي التجارة العالمية بنيويورك، ورفض حركة طالبان تسليم بن لادن للولايات المتحدة
الأمريكية، قام مجهولون باختراق مواقع الحركة على الإنترنت.
الذي كتبته بقراءة محتويات القاعدة وعرضها .بالطبع توجد إشكاليات بسيطة Code مبروك. لقد قام ال
في البيانات المعروضة، وسنشرح طريقة التغلب عليها في الدروس القادمة. لكن المهم في هذا الدرس، هو
فهمه جيدا لأن معظم الدروس التالية تعتمد على هذا الدرس.
: " & rs("body") الخبر response.write " أخيرا، يفضل إغلاق ربط القاعدة بهذا السطر تحت عبارة
مباشرة:
ADO.close
تحسین مظهر عرضالبیانات
فإن كنا نود عرض النتائج كل جملة في سطر HTML تحسين مظهر عرض البيانات يعتمد على أوامر لغة
أي أن أوامر العرض ستكتب بالطريقة التالية: <p></p> فسنضع الجملة بين
بوضع هذه العلامة%> قبل السطور التالية. ASP ملاحظة: لا تنسى أن تغلق نصوص
<p><%response.write " العنوان : " & rs(subject)%></p>
<p><%response.write " التاریخ : " & rs(add_dat)%></p>
<p><%response.write " الخبر : " & rs(body)%></p>
يجب ملاحظة التالي:
بالعلامة التالية: <% ASP علينا إغلاق نصوص HTML قبل البدء بكتابة أوامر •
علينا عدم نسيان وضع هذه العلامات: <% %> . HTML في أسطر ASP عند كتابة نصوص •
<p/><%(rs( العنوان : " & 2 " response.write%><p> : مثال
شغل صفحة أخبار تقنية. لترى النتيجة:
إليكم آخر المستجدات في الساحة التقنية
العنوان : اختراق مواقع حركة طالبان على الإنترنت
٢٠٠١/٩/ التاريخ : ٣١
الخبر : بعد عملية تفجير برجي التجارة العالمية بنيويورك، ورفض حركة طالبان تسليم بن لادن
للولايات المتحدة الأمريكية، قام مجهولون باختراق مواقع الحركة على الإنترنت.
أظن أن شكل النتائج أصبح أجمل بهذه الطريقة. وغن كنت تريد تجميله أكثر، عليك باستخدام الجداول.ز كما
في المثال التالي:
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse"
bordercolor="#111111" width="90%">
<tr>
<td width="100%" dir="rtl" bgcolor="#DFDFFF"><b><span lang="ar-sa"> : العنوان
<%response.write rs(subject)%></span></b></td>
</tr>
<tr>
<td width="100%" dir="rtl"><b><span lang="ar-sa"> التاریخ : <%response.write
rs(add_dat)%></span></b>
<p><b><span lang="ar-sa"> الخبر : <%response.write rs(body)%></span></b></td>
</tr>
</table>
</center>
</div>
<hr color="#DFDFFF" width="90%">
وستكون النتيجة:
العنوان : اختراق مواقع حركة طالبان على الإنترنت
٢٠٠١/٩/ التاریخ : ٣١
الخبر : بعد عملية تفجير برجي التجارة العالمية بنيويورك، ورفض حركة طالبان تسليم بن لادن
للولايات المتحدة الأمريكية، قام مجهولون باختراق مواقع الحركة على الإنترنت.
عند الانتهاء من كتابة هذه الأوامر. <% ADO.close %> لا تنسى أن تضع
Code بهذا نكون قد عالجنا الإشكالية الأولى، وهي مظهر البيانات. لكن هنالك إشكالية أكبر، وهي أن ال
الذي كتبناه قام بعرض وطباعة أول حقل فقط من القاعدة (أول خبر فقط) وتجاهل الأخبار الأخرى. لذا
لحل هذه الإشكالية. Do ... Loop و If ... Then سنستخدم كل من
عرضجمیع النتائج بشكل متتالي
في الدرس السابق، تعلمنا كيف يمكننا تغيير مظهر عرض الأخبار. والإشكالية الوحيدة المتبقية الآن هي:
كيفية عرض جميع الأخبار. فما قمنا به إلى الآن هو قراءة الأخبار من القاعدة، وعرض أول خبر فقط.
وفي هذا الدرس سنتعلم كيف يمكننا عرض كل الأخبار.
فستجد التالي: HTML وافتح tech.asp. افتح صفحة
<%@ Language=VBScript CodePage = "1256"%>
<html dir=rtl>
<!--#include file="pageheader.txt" -->
<p align="center"><font face="Simplified Arabic"> إلیكم آخر
التقنیة المستجدات في الساحة </font></p>
<%
البیانات أوامر فتح قاعدة'
Dim ConnectionString
Dim ADO
ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" &
Server.MapPath("\database\project.mdb")
Set ADO=Server.CreateObject("ADODB.Connection")
ADO.ConnectionString =ConnectionString
ADO.Open
واستدعاء البیانات منه أوامر اختیار الجدول'
selectSQL="select * from tech_news"
set rs=ADO.execute(selectSQL)
البیانات أوامر استعراض'
%>
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse"
bordercolor="#111111" width="90%">
<tr>
<td width="100%" dir="rtl" bgcolor="#DFDFFF"><b> العنوان : <%response.write
rs(subject)%></b></td>
</tr>
<tr>
<td width="100%" dir="rtl"><b> التاریخ : <%response.write rs(add_dat)%></b>
<p><b> الخبر : <%response.write rs(body)%></b></td>
</tr>
</table>
</center>
</div>
<hr color="#DFDFFF" width="90%">
<% ADO.close %>
<!--#include file="pagefooter.txt" -->
ليكون بالشكل التالي: HTML قم بتعديل
ملاحظة: السطور الجديدة كتبت باللون الأخصر لتسهل عملية تمييزها.
<%@ Language=VBScript CodePage = "1256"%>
<html dir=rtl>
<!--#include file="pageheader.txt" -->
<p align="center"><font face="Simplified Arabic"> إلیكم _________آخر
التقنیة المستجدات في الساحة
سأقوم معكم برحلة تعليمية بسيطة.. سنتعلم من خلالها كيفية استخدام هذه اللغة، وسأخبركم سر عنها ..
إنها سهلة جدا وليست معقدة. وسنتعلمها بإذن الله بكل سهولة ويسر.. وسأستخدم مشروعا صغيرا خلال
الرحلة لتطبيق ما نتعلمه من اللغة على المشروع بذلك سننتهي معا بموقع جاهز يعمل بهذه اللغة صممناه
السهلة والرائعة. ASP بأنفسنا، مستعدون ؟ ..( : إذا هيا نتوكل على الله ونبدأ رحلتنا التعليمية للغة
؟ ASP ما الحاجة لاستخدام
أو أحد برامج التصميم التي تمكنك من عمل ما تشاء HTML يمكنك تصميم صفحات رائعة باستخدام لغة
لشركة Dreamwaver أو Microsoft FrontPage كبرنامج HTML (تقريبا (ثم تحويل عملك للغة
ASP?!! إذن لماذا أضيع وقتي بتعلم Macromedia.
تكون ثابتة بمعنى أنك ما تكتبه في الصفحة سيظهر لك عند HTML المعلومات الظاهرة في صفحات
العرض .. مثل برنامج الوورد .. الذي تكتبه تراه .. ولكن ماذا إذا كانت عندك سجلات كبيرة من البيانات
وتريد أن تعرضها في الصفحة.. مثل ملاحظات سجل الزوار.. أو أسماء المشتركين في منتداك أو معلومات
أخرى مخزنة في قواعد بيانات مثل ميكروسوفت اكسس.
عرض هذه البيانات في الشاشة باستخراجها مباشرة من قواعد البيانات ASP تستطيع باستخدام صفحة
عن ASP وتتميز صفحات HTML . المخزنة فيها البيانات بدلا من تخزين هذه البيانات على صفحات
بكونها صفحات غير ثابتة المعلومات.. فالمعلومات بها مؤخذة من قواعد البيانات وتتغير في HTML
الصفحة بتغير المعلومات في قواعد البيانات وسأطلق هذه الميزة كلمة صفحات تفاعلية أي أنا تتفاعل
وتتأثر في الصفحة بتأثر وتغير المعلومات في قواعد البيانات. ومن الأمثلة على هذه الصفحات.. غرف
قوائم المشتركين.. ، Guest Book سجل الزوار ، Discussion Board المنتديات ، Chat الحوار
وغيرها من الصفحات التي تتطلب استقبال وإرسال المعلومات.
ASP : متطلبات العمل على لغة
Internet Information Server أو Personal Web Server أولا : تركيب
وغيرها، لا تعمل مباشرة على الأجهزة CGI و PHP و ASP اللغات المتقدمة لبرمجة المواقع أمثال
حتى تعمل. بإمكانك حجز مساحة (مجانية أو باشتراك شهري) في أحد Server الشخصية. فهي تحتاج ل
أنصح بالاشتراك Servers ( فأجهزتهم عبارة عن Hosting Providers مواقع الاستضافة في الإنترنت
وقواعد بيانات ASP فهو يقدم مساحة مكانية تدعم لغة http://www1.domaindlx.com في موقع
لكن ذلك ليس نهاية المطاف، فتكلفة الاتصال بالإنترنت مكلفة في بعض البلدان، وتصميم MS Access).
الموقع أثناء الاتصال، قد يكلف الكثير من الأموال. لذا، بإمكانك تركيب بعض البرامج التي تجعل من حاسبك
Server. الشخصي
لمستخدمي ويندوز ٩٨ أو ويندوز ملينيوم : •
وتركيبه في غاية البساطة.. كل ما عليك هو فتح Personal Web Server (PWS) قم بتركيب برنامج
سيتم setup.exe ( ومنه شغل الملف pws ومنه add-one 98 واختر المجلد Win98 CD قرص ويندوز
شرح هذا الأمر بالتفصيل في الدرس التالي.(
asp. في قرص الويندوز ٩٨ فابحث عن مجلد باسم pws ملاحظة: إن لم تجد مجلد باسم
إن لم لكن لديك قرص ويندوز ٩٨ يمكنك سحب البرنامج من هذا الرابط:
http://www.alnoor-world.com/download/PWS.zip
NT : لمستخدمي ويندوز 2000 أو •
للويندوز وستجده كخدمة متوفرة مع سيدي تركيب Internet Information Server قم بتركيب خدمة
ثم اختيار إضافة وإزالة مكونات ويندوز Control Panel الويندوز، وذلك بالذهاب لي لوحة التحكم
منه. Internet Information Server واختيار Add/Remove Windows Components
ASP : ثانيا : إختيار برنامج لكتابة نصوص
لا تحتاج بالضرورة لاستخدام برنامج خاص لذلك. سأستخدم خلال الشرح برنامج ASP لكتابة نصوص
لأنه متوفر عند الأغلبية ونستطيع باستخدامه تصميم شكل الصفحات ، وإن أردتم استخدام Front Page
الذي يأتي مع NotePad برامج أخرى تستطيعون أيضا متابعة الدروس معنا. إن كنت تريد استخدام برنامج
لأنه لن يساعدك في تصميم Note Pad الويندوز يمكنه القيام بالواجب. إلا أنني لا أنصحك حاليا باستخدام
أو Microsoft Front Page شكل الصفحة. كذلك تستطيع استخدام أي برامج تصميم صفحات الويب مثل
ASP المتخصص في إنشاء صفحات Microsoft Interdev أو ،Macromedia DreamWeaver
ولغات غيرها .
إن كنت لا تملك برنامجا أخر للتصميم ، Front Page إذا قم بتركيب
ثالثا: برنامج قواعد البيانات:
أو غيرها من برامج قواعد البيانات.. لكنني سأعتمد على Microsoft Access أو SQL يمكننا استخدام
وذلك لتوفره عند الأغلبية. Microsoft Access 2000
بذلك نكون قد تجهزنا للبدء في كتابة النصوص : ).. وأتمنى منكم المتابعة للتعلم.
لنبدأ معنا
إنني مؤمن بأن أفضل طريقة لتعلم هذه اللغة هو القيام بأمثلة عملية.. لذا لن أتحدث عن المتغيرات أو
الأوامر أو القيم إلا عندما نحتاجها لتصميم إحدى الصفحات.
ولنتأكد من تطبيقنا السليم للغة.. سنبدأ بمشروع من الصفر، خطوة بخطوة.. وعند نهاية هذه الدروس
ستكون قادرا على تصميم مشروعا مشابها، ومن ثم تطويره إن شاء الله.
مشروعنا سيكون، تصميم موقع إخباري بسيط.
أولا: المحتوى:
١. أخبار تقنية .
٢. أخبار منوعة .
ثانيا: الخدمات:
١. محرك بحث في محتويات الموقع .
٢. سجل زوار .
ثانيا:الإدارة:
١. تسجيل المسؤولين عن الموقع (أسماء وكلمات مرور خاصة بهم .(
٢. إضافة، تعديل، حذف الأخبار من خلال الموقع .
تنفيذ هذا الموقع الإخباري، يتطلب منا تعلم مجموعة من أهم أوامر هذه اللغة.. وهذا هو الغرض من هذه
الدروس .فهل أنت مستعد ومتحمس ؟! إذا أرجو منك المتابعة وسنصل إلى موقع رائع في النهاية.
إذا خذ قسطا من الراحة.. وابدأ بتجهيز البرامج التي أخبرتك عنها في الأعلى.. ثم تابع الدروس التالية..
وأنا في انتظاركهناك.
Personal Web Server - PWS تركيب
وستجد هنا خطوات مدعمة بالصور لتسهيل عملية تركيب ASP ضروري لتشغيل صفحات PWS إن تركيب
40 MB 20 و – 30 MB RAM 90 و MHz يتطلب البرنامج على الأقل معالج بينتيوم بسرعة PWS.
فارغة في القرص الصلب.
في مشغل الأقراص . Windows ١. أدخل قرص 98
Run واختر تشغيل Start ٢. اضغط على قائمة ابدأ
x:\add-ons\pws\setup.exe ٣. اكتب
بحرف مشغل الأقراص بجهازك . X ٤. أبدل حرف
ستظهر لك الشاشة التالية:
Custom ثم من الشاشة التالية اضغط على Next اضغط على
"Show ثم اضغط على "Personal Web Server (PWS)" من الشاشة التالية اختر
Subcomponents…"
"Show Subcomponents…" ثم اضغط على "Documentation” من الشاشة التالية اختر
Next ثم Ok ثم مرة أخرى Ok ثم اضغط على "Active Server Pages” من الشاشة التالية اختر
للانتقال لخطوة التالية من عملية التثبيت.
ستظهر لك الشاشة التالية.. أفضل إبقاء كل شي على ما هو عليه، إلا أن هذا الأمر راجع إليك.
ستبدأ عملية التثبيت.
بعد الانتهاء منها سيطلب منك إعادة تشغيل الجهاز. عندما تفعل ذلك ستلاحظ أن هنالك شيئا جديدا أضيف
هذا يعني أن التركيب قد تم بنجاح. تهانينا. Taskbar. بجانب الساعة في شريط المهام
طريقة سريعة لاختبار ذلك، اذهب للعنوان التالي (يفضل الاحتفاظ بهذا العنوان في قائمة المواقع المفضل
وستظهر لك الشاشة التالية : Favorites) http://localhost/iishelp
!
ملاحظات:
إن لم لكن لديك قرص ويندوز ٩٨ يمكنك سحب البرنامج من هذا الرابط: •
http://www.alnoor-world.com/download/PWS.zip
إن لم ترغب بتخزين هذا البرنامج على جهازك. فبإمكانك حجز مساحة مجانية من هذا الموقع •
لكن ذلك سيتطلب تجربة الصفحات التي سنصممها، على . http://www1.domaindlx.com
الإنترنت مباشرة، ولن يمكن تشغيل الصفحات على الكمبيوتر.
default.asp الصفحة الأولى
في الموقع لتشغیلها Index أو Default عن صفحة تحمل اسم (Browser) دائما ما یبحث برنامج التصفح
: Default . تلقائیا. لذا عادة ما تكون الصفحة الرئیسیة في الموقع بهذا الاسم. وفي مشروعنا سنستخدم اسم
قم بتصمیم ما یعجبك.. مع مراعاة وضع عنوان الصفحة بشكل بارز، ورابط لكل من Frontpage باستخدام
وآخر ،(guest.asp) ورابط لسجل الزوار ،(news.asp) والأخبار المنوعة ، (tech.asp) الأخبار التقنیة
ولا تنسى أن تكتب فقرة (admin.asp). وأخیرا رابط لقسم إدارة الموقع ،(search.asp) لمحرك البحث
C:\Inetpub\wwwroot\news ترحیبیة بالزوار .وخزن جمیع هذه الملفات في
ملاحظة: هذه بعضالمواقع التي تشرح لك كیفیة التصمیم بالفرونت بیج :المصمم لك ، أجنادین.
ثم قم أنت بإنشاء المجلد C:\Inetpub\wwwroot سیتم إنشاء هذه المجلدات PWS ملاحظة: عند تركیب
لتخزین ملفات مشروعنا هذا فیه. news
التصمیم المقترح:
عالم الیوم
للتصمیم المقترح. (استخدام هذا النصسیسهل علیك متابعة الدروس.( HTML هذا هو نص
<html dir=rtl>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1256">
<meta http-equiv="Content-Language" content="ar-qa">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title> الیوم عالم </title>
</head>
<body>
<p align="center"><img border="0" src="thetitel.gif"></p>
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<hr>
<p align="center"><font face="Simplified Arabic" size=" مرحبا <" 3
بكم في
موقعنا الإخباري المتمیز </font></p>
<p align="center"><font face="Simplified Arabic" size=" نتمنى <" 3
لكم
المتعة والفائدة معنا </font></p>
<p align="center"><font face="Simplified Arabic" size=" مع <" 3
تحیات </font></p>
<p align="center"><font face="Simplified Arabic" size="3"
color="#AD إدارة<" 1212
الموقع </font></p>
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<p align="center"><b><font face="Simplified Arabic"
size=" جمیع<" 2
الحقوق محفوظة ٢٠٠١ </font></b></p>
</body>
</html>
SSI استخدام
للاستغناء عن تكرار تصمیم الأجزاء المتشابهة في كل صفحة.. مثل الجزء العلوي من الصفحة.. أو مؤخرة
لوضع الجزء المراد تكراره في ملف SSI الصفحة والتي تحتوي على حقوق الحفظ .. نستطیع استخدام میزة
واحد فقط.. وإضافة اسم الملف في الملفات المراد تكرار الجزء فیها.
على سبیل المثال: سنعتمد تصمیما واحدا لجمیع الصفحات.. ففي رأس الصفحة عنوان الموقع، وتحته روابط
للأقسام المختلفة.. وفي نهایة الصفحة الروابط من جدید.
ببساطة، یمكنك نسخ نفس النصلجمیع الصفحات.. الرأس:
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1256">
<meta http-equiv="Content-Language" content="ar-qa">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title> عالم الیوم </title>
</head>
<body>
<p align="center"><img border="0" src="thetitel.gif"></p>
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<hr>
نهایة الصفحة:
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<p align="center"><b><font face="Simplified Arabic"
size=" جمیع<" 2
الحقوق محفوظة ٢٠٠١ </font></b></p>
</body>
</html>
ثم كتابة ما تریده ما بین هاتین الفقرتین.
للتوضیح أكثر، سأضح النصكاملا مرة أخرى، الجزء العلي سأضعه باللون الأخضر، والسفلي باللون الأرق،
والجزء الرئیسي سیكون باللون الأسود. هذا هو النص:
<html dir=rtl>
الجزء العلوي '
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1256">
<meta http-equiv="Content-Language" content="ar-qa">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title> عالم الیوم </title>
</head>
<body>
<p align="center"><img border="0" src="thetitel.gif"></p>
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> أخبار منوعة </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> سجل الزوار </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<hr>
الجزء الرئیسي '
<p align="center"><font face="Simplified Arabic" size=" مرحبا <" 3
بكم في
موقعنا الإخباري المتمیز </font></p>
<p align="center"><font face="Simplified Arabic" size=" نتمنى <" 3
لكم
المتعة والفائدة معنا </font></p>
<p align="center"><font face="Simplified Arabic" size=" مع<" 3
تحیات </font></p>
<p align="center"><font face="Simplified Arabic" size="3"
color="#AD إدارة<" 1212
الموقع </font></p>
الجزء السفلي '
<hr>
<p align="center"><font face="Simplified Arabic"
size="3"><b><a href="tech.asp"> أخبار
تقنیة </a>| <a href="news.asp"> منوعة أخبار </a>| <a
href="search.asp"> بحث </a>
| <a href="guest.asp"> الزوار سجل </a>| <a href="admin.asp"> إدارة
الموقع </a></b></font></p>
<p align="center"><b><font face="Simplified Arabic"
size=" جمیع<" 2
الحقوق محفوظة ٢٠٠١ </font></b></p>
</body>
</html>
الأمر سهل للغایة ألیس كذلك؟! إنه سهل هذه المرةلأن عدد الصفحات لدینا بسیط.. الصفحة الرئیسیة، الأخبار
التقنیة، الأخبار المنوعة، بحث، سجل الزوار.. أي خمس صفحات.. لكن تخیل أن عندنا ١٠٠ صفحة.. هل
ستقوم بعملیة النسخ واللصق لكل هذه الصفحات!! وإن قمت بذلك.. تخیل أنك ترید إجراء تعدیل معین في
تصمیم رأس الصفحة أو نهایتها، هل ستفتح ال ١٠٠ صفحة وتقوم بتعدیلها واحدة واحدة!! ألن یكون الأمر
شاقا علیك!! إلیك الحل.
pagefooter.txt والجزء الأسفل باسم pageheader.txt قم بحفظ الجز الأعلى في ملف اسمه
لتكون الشفرة فیه كالتالي: default.asp أجرِ تعدیلا التالیة على ملف
<html dir=rtl>
<!--#include file="pageheader.txt" -->
<p align="center"><font face="Simplified Arabic" size=" مرحبا <" 3
بكم في
موقعنا الإخباري المتمیز </font></p>
<p align="center"><font face="Simplified Arabic" size=" نتمنى <" 3
لكم
المتعة والفائدة معنا </font></p>
<p align="center"><font face="Simplified Arabic" size=" مع <" 3
تحیات </font></p>
<p align="center"><font face="Simplified Arabic" size="3"
color="#AD إدارة<" 1212
الموقع </font></p>
<!--#include file="pagefooter.txt" -->
شغل الصفحة.. وستراها بنفس التصمیم الأول.. والآن.. یمكن إدراج الرأس والنهایة لكل الصفحات الأخرى
(التي سنصممها قریبا) من دون الحاجة لنسخ الشفرة في كل مرة.. وإن أردنا إجراء أي تغییر في المستقبل،
كل ما علینا هو إجراء التغییر على أحد هذین الملفین.. والتغییر سیطبق تلقائیا على جمیع الصفحات.
project.mdb تصميم قاعدة البيانات للمشروع
إن لم Microsoft Access كما ذكرت في الفصل الأول، سنصمم قاعدة البيانات باستخدام برنامج . 2000
تكن لديك خبرة سابقة في التعامل مع هذا البرنامج فلا تخشى شيئا، فسأكون معك خطوة بخطوة.
١- شكل ٤
سيطلب منك حفظ قاعدة البيانات، اختر لها اسما واحفظها Ok. واضغط Blank Access database اختر
أو المجلد الفرعي الذي خصصته لهذه الصفحة بداخل هذا المجلد. C:\Inetpub\wwwroot في
سيتم إكمال الدروس news ( بداخل المجلد الفرعي database ويفضل أن تحفظ بداخل مجلد فرعي باسم
اعتمادا على هذا الافتراض.(
!Error
4-1- شكل 1
project.mdb وسنسمي القاعدة هنا
!Error
4-2- شكل 2
ستظهر لك الشاشة التالیة: Create بعد الضغط على زر
٢- شكل ٤
وصمم الجدول التالي Create table in Design view اختر
٣- شكل ٤
– Text, Memo, AutoNumber) وهذا الجزء يتغير بتغير نوع الحقل Field Properties ( في قسم
وعادة ما يكون الرقم الموجود ٥٠ . هذا الجزء هو الذي يحدد عدد Text إن كان الحقل Field Size ستجد
الحروف التي بإمكانك إدخالها في هذا الحقل، لذا أنصح بتغييرها ل ٢٥٥ وهو الحد الأقصى.
أي لا يمكن ترك هذا الحقل فارغ. بإمكانك No وعادة يكون أمامها Allow Zero Length أيضا ستجد
أي يمكن ترك هذا الحقل فارغ من البيانات. Yes وضع
سيسألك عن اسم الجدول، بإمكانك اختيار أي اسم يعجبك. في مشروعنا الحالي سنسميه Save اضغط على
No ثم ستظهر لك الرسالة التالية اختر منها tech_news.
!Error
٤- شكل ٤
٢). اضغط على اسمه مرتين لفتحه. سيظهر لك الشكل - أغلق الجدول، وسترى اسمه موجود في (شكل ٣
التالي
4- شكل 5
سيتم ترقيمها تلقائيا( id أدخل البيانات التالية في الجدول (خانة
30/9/2001 1 مايكروسوفت
تنجو من
محاولة
تفكيكها
سحبت الولايات الثمانية عشر الدعوى التي
رفعتها على شركة مايكروسوفت، مطالبة
المحكمة بتفكيك الشركة لكونها محتكرة
لسوق البرمجيات.
31/9/2001 2 اختراق مواقع
حركة طالبان
على الإنترنت
بعد عملية تفجير برجي التجارة العالمية
بنيويورك، ورفض حركة طالبان تسليم بن
لادن للولايات المتحدة الأمريكية، قام
مجهولون باختراق مواقع الحركة على
الإنترنت.
أغلق الجدول، واحفظ القاعدة.. واستعد للدرس القادم الذي سأبين فيه كيفية استعراض محتويات القاعدة
عن طريق الموقع.
في المرة التالية، ستظهر لك الشاشة التالية: Ms Access ملاحظة: عند فتح برنامج
يمكنك اختيار القاعدة التي أنشاءناها في هذا الدرس من خلال هذه الشاشة مباشرة.
بقاعدة البیانات ASP ربط صفحات
وفي هذا الدرس، Microsoft Access صممنا في الدرس السابق قاعدة بيانات باستخدام برنامج . 2000
واستعراض محتوياتها. ASP سنتعلم كيفية ربط القاعدة بصفحات
(tech.asp). لإجراء بعض التعديلات عليها. لذا قم بحفظها باسم (default.asp) قم بفتح الصفحة الأولى
tech.asp فكل التغييرات التي سنقوم بهذا ستكون على ملف
في الصفحة الأولى كنا قد كتبنا جملة ترحيبية لزوار الموقع. أما في هذه الصفحة فسنستبدلها بجملة أخرى
تبين ماهية الصفحة. فسنكتب:
إليكم آخر المستجدات على الساحة التقنية
ASP . والآن.. سنبدأ بالجزء الأهم.. وهو كتابة نصوص
واكتب الجملة HTML تكتب دائما بين هاتين العلامتين. <% %> لذا، افتح نصوص ASP نصوص
التالية في أول سطر:
<%@ Language=VBScript CodePage = "1256"%>
في هذه الصفحة. وسطر (تحديد اللغة) يجب أن يكون VBScript هذا السطر يشير إلى أننا سنستخدم لغة
دائما في بداية الصفحة.
واكتب التالي تحت الجملة الترحيبية:
<%
Dim ConnectionString
Dim ADO
ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" &
Server.MapPath("\database\project.mdb")
Set ADO=Server.CreateObject("ADODB.Connection")
ADO.ConnectionString =ConnectionString
ADO.Open
%>
يتم فيها تحديد المتغيرات، وسنتحدث عن المتغيرات أكثر في (Dim): السطران الأول والثاني •
المستقبل.
يحدد طريقة فتح قاعدة البيانات، واسم القاعدة والمسار (ConnectionString): السطر الثالث •
إليها. يمكنك تغيير اسم القاعدة ومسارها بما يتناسب مع ما قمت به على جهازك. لقد قمت
وما قبل الاسم هو مسار الوصول إليها. project.mdb بتسمية القاعدة
ADO يحدد اسم المتغير الذي سيقوم بالربط.. وهو في مثالنا (Set ADO): السطر الرابع •
ويمكنك تغييره بما يناسبك، إلا أن عليك استخدامه كثيرا، لذا لا أفضل تغييره حتى لا يسبب لك
بعض الصعوبة في متابعة الدروس.
السطران الخامس والسادس: يقومان بفتح القاعدة. •
ما قمنا به حتى هذه الخطوة، هو الوصولللقاعدة فقط. والخطوة التالية هي الوصول للبيانات التي
مباشرة: ADO.open بالقاعدة. ولعمل ذلك قم بكتابة التالي تحت عبارة
selectSQL="select * from tech_news"
set rs=ADO.execute(selectSQL)
وفيها يثم اختيار البيانات من القاعدة Select تحدد أمر الاختيار (selectSQL): السطر الأول •
حسب شروط يتم تحديدها. في حالتنا هذه طلبنا اختيار:
١. جميع البينات) ويمثلها رمز , (* ويمكن استبدالها باسم عمود او خانة معية من الجدول.
tech_news ٢. من جدول
أي أن هذان هما الشرطان الواجب القيام بهما.
تنفيذ الأمر. (set rs): السطر الثاني •
ما قمنا به حتى الآن هو فتح القاعدة، واستدعاء البيانات منها. وما سنقوم به الآن هو طباعة هذه
مباشرة: set rs=ADO.execute(selectSQL) المعلومات. قم بكتابة التالي تحت عبارة
response.write " العنوان : " & rs("subject")
response.write " التاریخ : " & rs("add_dat")
response.write " الخبر : " & rs("body")
تمثل النتائج. حيث يكتب اسم الجدول المراد عرض ، rs(*) ، تقوم بطباعة النتائج response.write
بياناته بين علامات التنصيص " "
وفي شريط العنوان Explorer Internet وذلك بفتح المتصفح tech.asp قم بتشغيل الصفحة
اكتب العنوان الموقع، وذلك بكتابة اسم جهازك ومن ثم المجلد الذي يحتوي الموقع: Address Bar
default.asp/news/http://asp
في العنوان تمثل اسم الجهاز، وهذا الاسم يختلف من جهاز لآخر. لمعرفة اسم جهازك، ASP : ملاحظة
لترى: Identification واختر Network ومنها افتح الشبكة Panel Control افتح لوحة التحكم
Computer Name
أي أن العنوان سيصبح كالتالي: localhost يمكنك الاستعاضة عن اسم الجهاز بكلمة
http://localhost/news/default.asp
ستظهر صفحة عالم اليوم بالشكل التالي:
عالم اليوم
فاضغط على رابط :أخبار تقنية. لترى النتيجة:
إليكم آخر المستجدات في الساحة التقنية
٢٠٠١ الخبر : بعد عملية /٩/ العنوان : اختراق مواقع حركة طالبان على الإنترنتالتاريخ : ٣١
تفجير برجي التجارة العالمية بنيويورك، ورفض حركة طالبان تسليم بن لادن للولايات المتحدة
الأمريكية، قام مجهولون باختراق مواقع الحركة على الإنترنت.
الذي كتبته بقراءة محتويات القاعدة وعرضها .بالطبع توجد إشكاليات بسيطة Code مبروك. لقد قام ال
في البيانات المعروضة، وسنشرح طريقة التغلب عليها في الدروس القادمة. لكن المهم في هذا الدرس، هو
فهمه جيدا لأن معظم الدروس التالية تعتمد على هذا الدرس.
: " & rs("body") الخبر response.write " أخيرا، يفضل إغلاق ربط القاعدة بهذا السطر تحت عبارة
مباشرة:
ADO.close
تحسین مظهر عرضالبیانات
فإن كنا نود عرض النتائج كل جملة في سطر HTML تحسين مظهر عرض البيانات يعتمد على أوامر لغة
أي أن أوامر العرض ستكتب بالطريقة التالية: <p></p> فسنضع الجملة بين
بوضع هذه العلامة%> قبل السطور التالية. ASP ملاحظة: لا تنسى أن تغلق نصوص
<p><%response.write " العنوان : " & rs(subject)%></p>
<p><%response.write " التاریخ : " & rs(add_dat)%></p>
<p><%response.write " الخبر : " & rs(body)%></p>
يجب ملاحظة التالي:
بالعلامة التالية: <% ASP علينا إغلاق نصوص HTML قبل البدء بكتابة أوامر •
علينا عدم نسيان وضع هذه العلامات: <% %> . HTML في أسطر ASP عند كتابة نصوص •
<p/><%(rs( العنوان : " & 2 " response.write%><p> : مثال
شغل صفحة أخبار تقنية. لترى النتيجة:
إليكم آخر المستجدات في الساحة التقنية
العنوان : اختراق مواقع حركة طالبان على الإنترنت
٢٠٠١/٩/ التاريخ : ٣١
الخبر : بعد عملية تفجير برجي التجارة العالمية بنيويورك، ورفض حركة طالبان تسليم بن لادن
للولايات المتحدة الأمريكية، قام مجهولون باختراق مواقع الحركة على الإنترنت.
أظن أن شكل النتائج أصبح أجمل بهذه الطريقة. وغن كنت تريد تجميله أكثر، عليك باستخدام الجداول.ز كما
في المثال التالي:
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse"
bordercolor="#111111" width="90%">
<tr>
<td width="100%" dir="rtl" bgcolor="#DFDFFF"><b><span lang="ar-sa"> : العنوان
<%response.write rs(subject)%></span></b></td>
</tr>
<tr>
<td width="100%" dir="rtl"><b><span lang="ar-sa"> التاریخ : <%response.write
rs(add_dat)%></span></b>
<p><b><span lang="ar-sa"> الخبر : <%response.write rs(body)%></span></b></td>
</tr>
</table>
</center>
</div>
<hr color="#DFDFFF" width="90%">
وستكون النتيجة:
العنوان : اختراق مواقع حركة طالبان على الإنترنت
٢٠٠١/٩/ التاریخ : ٣١
الخبر : بعد عملية تفجير برجي التجارة العالمية بنيويورك، ورفض حركة طالبان تسليم بن لادن
للولايات المتحدة الأمريكية، قام مجهولون باختراق مواقع الحركة على الإنترنت.
عند الانتهاء من كتابة هذه الأوامر. <% ADO.close %> لا تنسى أن تضع
Code بهذا نكون قد عالجنا الإشكالية الأولى، وهي مظهر البيانات. لكن هنالك إشكالية أكبر، وهي أن ال
الذي كتبناه قام بعرض وطباعة أول حقل فقط من القاعدة (أول خبر فقط) وتجاهل الأخبار الأخرى. لذا
لحل هذه الإشكالية. Do ... Loop و If ... Then سنستخدم كل من
عرضجمیع النتائج بشكل متتالي
في الدرس السابق، تعلمنا كيف يمكننا تغيير مظهر عرض الأخبار. والإشكالية الوحيدة المتبقية الآن هي:
كيفية عرض جميع الأخبار. فما قمنا به إلى الآن هو قراءة الأخبار من القاعدة، وعرض أول خبر فقط.
وفي هذا الدرس سنتعلم كيف يمكننا عرض كل الأخبار.
فستجد التالي: HTML وافتح tech.asp. افتح صفحة
<%@ Language=VBScript CodePage = "1256"%>
<html dir=rtl>
<!--#include file="pageheader.txt" -->
<p align="center"><font face="Simplified Arabic"> إلیكم آخر
التقنیة المستجدات في الساحة </font></p>
<%
البیانات أوامر فتح قاعدة'
Dim ConnectionString
Dim ADO
ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" &
Server.MapPath("\database\project.mdb")
Set ADO=Server.CreateObject("ADODB.Connection")
ADO.ConnectionString =ConnectionString
ADO.Open
واستدعاء البیانات منه أوامر اختیار الجدول'
selectSQL="select * from tech_news"
set rs=ADO.execute(selectSQL)
البیانات أوامر استعراض'
%>
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse"
bordercolor="#111111" width="90%">
<tr>
<td width="100%" dir="rtl" bgcolor="#DFDFFF"><b> العنوان : <%response.write
rs(subject)%></b></td>
</tr>
<tr>
<td width="100%" dir="rtl"><b> التاریخ : <%response.write rs(add_dat)%></b>
<p><b> الخبر : <%response.write rs(body)%></b></td>
</tr>
</table>
</center>
</div>
<hr color="#DFDFFF" width="90%">
<% ADO.close %>
<!--#include file="pagefooter.txt" -->
ليكون بالشكل التالي: HTML قم بتعديل
ملاحظة: السطور الجديدة كتبت باللون الأخصر لتسهل عملية تمييزها.
<%@ Language=VBScript CodePage = "1256"%>
<html dir=rtl>
<!--#include file="pageheader.txt" -->
<p align="center"><font face="Simplified Arabic"> إلیكم _________آخر
التقنیة المستجدات في الساحة
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى