الدرس التاسع عشر : صفحة إضافة الأخبار (add_news.asp)

الدرس التاسع عشر : صفحة إضافة الأخبار (add_news.asp)

http://www.alnoor.info/ASP/topicbody…21&SectionID=1

أسماء الحقول هي:

  • section للقائمة المنسدلة.
  • subject للعنوان.
  • body للمحتوى.

يمكن تصميم الشكل السابق بالفرونت بيج، أو استخدام هذا الـ Code: 

<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>
&nbsp;<textarea rows=“11” name=“body” cols=“78”></textarea></b></p>
<p><input type=“submit” value=“إضافة” name=“add”
></p>
</form>

سنستعرض الآن الفروقات بين هذه الصفحة وصفحة سجل الزوار:
أولا : تم إضافة القسم (section) واستخدمنا فيه القائمة المنسدلة Drop-Down Box. مع ملاحظة تعديل خصائصه :
فعند إضافة القيم للقائمة المنسدلة (بالضغط على زر Add) ستظهر لنا الشاشة التالية:

نضع إشارة صح أمام Specify Value ثم نكتب القيمة التي سيتم إرسالها من طريق النموذج Form . وهذه القيمة تمثّل: اسم الجدول الذي يحتوي على هذه النوعية من الأخبار في قاعدة البيانات. ولفهم سبب قيامنا بذلك، يجب معرفة الغرض من استخدام القائمة المنسدلة في هذا الموقع.
تعلمنا سابقا أن أمر Add للإضافة بيانات للقاعدة، يتطلب تحديد:

  1. اسم الجدول المطلوب إضافة البيانات فيه.
  2. اسم كل حقل في الجدول.
  3. القيمة المطلوب إدراجها في كل حقل.

في حالتنا هذه لدينا جدولين وليس جدولا واحدا.. جدول يضم الأخبار العامة، وآخر للأخبار التقنية. بالإمكان تصميم صفحة لإضافة الأخبار عامة، وصفحة أخرى لإضافة الأخبار التقنية. لكن الأفضل من ذلك، هو تصميم صفحة واحدة (مرنة) يمكن من خلالها تحديد الجدول الذي نريد إضافة المقالات فيه. ويتم ذلك باستخدام القائمة المنسدلة.

في النهاية ستظهر خصائص القائمة المنسدلة بالشكل التالي:

أخيرا، من خلال Form Properties يتم تحديد الصفحة التي سيتم إرسال القيم إليها للمعالجة، وهي نفس الصفحة التي تحتوي على النموذج: add_news.asp

بعد تصميم النموذج، ننتقل الآن إلى كتابة أوامر ASP .. وسنشرح الأوامر الجديدة.
<%@language=VBScript CodePage=”1256″%>

<!–#include file=”connection.txt”–>

<%
section=request.form(“section”)
subject=request.form(“subject”)
body=request.form(“body”)
%>

<%
Function AddF()

addSQL= ” insert into “&section&” (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>
&nbsp;<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 عما كتبناه سابقا في صفحة إضافة التواقيع لسجل الزوار، ففي سجل الزوار حددنا اسم الجدول الذي نود إضافة المدخلات فيه، أما في هذه الصفحة فاستبدلنا اسم الجدول بالمتغير “&section&” والذي يتم استقبال قيمته من خلال القائمة المنسدلة في النموذج. وبالتالي قد يكون أخبار عامة، أو أخبار تقنية.
ثانيا: استخدمنا Function والتي يمكن تسميتها وظيفة أو دالة. وهي عبارة عن مجموعة أوامر تُـنفّـذ مع بعضها البعض أو لا تُـنفّـذ إطلاقا، لذا فنضعها مع بعض نبدأها بـ Function ونحدد اسم مثلا addfونضع بعدها الاسم () ثم نكتب المطلوب.. ونغلق الـ Function بـ End Function . وفي المكان اللي نريد تنفيذ هذه الأووامر أو الـ Function فيه نضع فيه الاسم. وفي حالتنا addf() وضعناه بين Elseو End if وهو المكان الذي نريد فيه أن تتنفذ أوامر الإضافة.

  • يمكنك مشاهدة الصفحة التي قمنا بتصميمها في هذا الدرس من خلال هذا الرابط: إدارة الموقع

إعداد: خالد الحر

الكاتب ayman

ayman

مواضيع متعلقة

التعليقات مغلقة