سنستعرض الآن الفروقات بين هذه الصفحة وصفحة سجل
الزوار:
أولا : تم إضافة القسم (section) واستخدمنا
فيه القائمة المنسدلة Drop-Down Box. مع ملاحظة
تعديل خصائصه :
فعند إضافة القيم للقائمة المنسدلة (بالضغط
على زر Add) ستظهر لنا الشاشة التالية:
نضع إشارة صح
أمام Specify Value ثم نكتب القيمة
التي سيتم إرسالها من طريق النموذج Form .وهذه القيمة تمثّل: اسم الجدول الذي يحتوي على هذه النوعية
من الأخبار في قاعدة البيانات. ولفهم سبب قيامنا بذلك، يجب معرفة الغرض
من استخدام القائمة المنسدلة في هذا الموقع.
تعلمنا سابقا أن أمر Add للإضافة بيانات للقاعدة، يتطلب
تحديد:
اسم الجدول المطلوب إضافة البيانات
فيه.
اسم كل حقل في
الجدول.
القيمة المطلوب إدراجها في كل
حقل.
في حالتنا هذه لدينا جدولين وليس جدولا
واحدا.. جدول يضم الأخبار العامة، وآخر للأخبار التقنية. بالإمكان
تصميم صفحة لإضافة الأخبار عامة، وصفحة أخرى لإضافة الأخبار التقنية.
لكن الأفضل من ذلك، هو تصميم صفحة واحدة (مرنة) يمكن من خلالها تحديد
الجدول الذي نريد إضافة المقالات فيه. ويتم ذلك باستخدام القائمة
المنسدلة.
في النهاية ستظهر خصائص القائمة المنسدلة بالشكل
التالي:
أخيرا، من خلال Form Properties يتم تحديد الصفحة التي سيتم إرسال القيم إليها للمعالجة،
وهي نفس الصفحة التي تحتوي على النموذج:
add_news.asp
بعد تصميم النموذج، ننتقل الآن إلى كتابة أوامر ASP
.. وسنشرح الأوامر الجديدة.
addSQL= " insert into "§ion&"
(subject,body) values
('"&subject&"','"&body&"')" ADO.execute(addSQL) %><p><font face="Simplified
Arabic" size="3">شكرا لك.. لقد تم إضافة الخبر
بنجاح</font></p><%
End
Function %> <body> <% If subject="" or body="" or
then response.write "لم تقم بإدخال جميع الحقول المطلوبة.. من
فضلك اضغط زر عودة في متصفحتك وقم بإدخال جميع
الحقول" Else AddF() End If %> <p align="center"><b>إضافة الأخبار</b></p> <form
method="POST"
action="add_news.asp"> <p><b>القسم: <select
size="1" name="section"> <option value="general_news">أخبار منوعة</option> <option value="tech_news">أخبار تقنية</option> </select></b></p> <p><b>العنوان: <input
type="text"
name="subject"
size="20"></b></p> <p><b>المحتوى:</b></p> <p><b> <textarea
rows="11" name="body" cols="78"></textarea></b></p> <p><input type="submit"
value="إضافة"
name="add"></p> </form>
<% ADO.close Set
ADO=Nothing %> </body>
</html>
أولا: هنالك اختلاف بسيط في جملة addSQL عما كتبناه سابقا في
صفحة إضافة التواقيع لسجل الزوار، ففي سجل الزوار حددنا اسم الجدول
الذي نود إضافة المدخلات فيه، أما في هذه الصفحة فاستبدلنا اسم الجدول
بالمتغير "§ion&"والذي يتم استقبال قيمته من
خلال القائمة المنسدلة في النموذج. وبالتالي قد يكون أخبار عامة، أو
أخبار تقنية.
ثانيا: استخدمنا Function
والتي يمكن تسميتها وظيفة أو دالة. وهي عبارة عن
مجموعة أوامر تُـنفّـذ مع بعضها البعض أو لا تُـنفّـذ إطلاقا، لذا فنضعها
مع بعض نبدأها بـ Function ونحدد اسم مثلا
addf ونضع بعدها الاسم () ثم نكتب المطلوب.. ونغلق الـ Function بـ End
Function . وفي المكان اللي نريد تنفيذ
هذه الأووامر أو الـ Function فيه نضع فيه الاسم.
وفي حالتناaddf() وضعناه بين Else و End if
وهو
المكان الذي نريد فيه أن تتنفذ أوامر الإضافة.
يمكنك مشاهدة الصفحة التي قمنا بتصميمها في هذا الدرس من
خلال هذا الرابط: