Advanced Search

المحرر موضوع: على بركة الله سلسلة دروس تصميم المواقع  (زيارة 14998 مرات)

0 الأعضاء و 5 ضيوف يشاهدون هذا الموضوع.

أغسطس 27, 2002, 05:35:24 مساءاً
رد #30

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #30 في: أغسطس 27, 2002, 05:35:24 مساءاً »
سيدي أبو الحروف

فقط أخبرني إلى أي مرحلة وصلت إليها وكل شيء صحيح وعلى ما يرام ومن أين بدأ الخلل تحديداً .

أغسطس 27, 2002, 05:56:45 مساءاً
رد #31

ابو الحروف

  • عضو خبير

  • *****

  • 1993
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #31 في: أغسطس 27, 2002, 05:56:45 مساءاً »
السلام عليكم ورحمة الله وبركاته
اخي الكريم ابو عبد الرحمن

كل ما ظهر في الدروس الاربعة قمت بتنفيذه ولم تكن هنالك اية مشكلة...
قمت بانشاء ملف جديد بعنوان tech.asp وغيرت فيه الكلمة الترحيبية فقط... ثم كتبت في بدايته الكود الذي ذكرته والذي يخبر عن استخدام اللغة في ال html... بعد ذلك اضفت الاكواد التي تصل الى البيانات ثم تلك التي تطبعها... في النهاية حفظت الملف وقمت باغلاقه ومن ثم فتح صفحة default ولكن لدا الضغط على اخبار التقنية لم يحدث شيء!!! بقيت الصفحة كما هي... اي ان البيانات لم تظهر!!
هذا ما حدث لي

مع فائق تقديري لك
ابو الحروف

أغسطس 28, 2002, 02:01:17 صباحاً
رد #32

ابو الحروف

  • عضو خبير

  • *****

  • 1993
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #32 في: أغسطس 28, 2002, 02:01:17 صباحاً »
حاولت مرارا وتكرارا معرفة سبب المشكلة لكنني لم انجح في ذلك...
لذا قمت بانشاء موقع لاجراء التجارب من خلاله, وقد قمت بوضع جميع الملفات فيه...

موقع المشروع

فقد ظننت ان السيرفر عندي فيه مشكلة... الا ان المشكلة بقيت كما هي...

لا ادري ما الحل!!!

مع فائق تقديري لمدى تحملك
ابو الحروف

أغسطس 28, 2002, 04:25:52 صباحاً
رد #33

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #33 في: أغسطس 28, 2002, 04:25:52 صباحاً »
أخي الحبيب أبو الحروف
تحية طيبة وبعد
أولاً أتمنى عدم تكرار أنكم أزعجتمني أو اثقلتم علي أو .. أو .. هذا من دواعي سروري وأتشرف بخدمتكم أخي الحبيب .

ثانياً :ارجو أن أكون قد وفقت في حل المشكلة وآمل أن ترى المشروع الآن رغم أنني أعتذر فقد كنت مستعجلاً حين تعديله ..

ثالثاً :لم يتبقى عليك سوى ربط القاعدة التي في جهازك بالصفحات المنشأة كل بحسب موضوعه ، وهذه المرحلة تجدها في أول الدرس الخامس .

مع خالص تحياتي وتقديري

أغسطس 29, 2002, 04:07:09 مساءاً
رد #34

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #34 في: أغسطس 29, 2002, 04:07:09 مساءاً »
أخي الحبيب أبو الحروف

اسمح لي استاذي العزيز أن اكمل السلسة ومن ثم ساكون معك - بإذن الله - خطوة بخطوة .

وتقبل خالص تحياتي واحترامي ..
أخوك المحب أبو عبدالرحمن

أغسطس 29, 2002, 04:32:33 مساءاً
رد #35

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #35 في: أغسطس 29, 2002, 04:32:33 مساءاً »
الدرس الثامن: وضع روابط لمواضيع في قاعدة البيانات


في الدرس السابق، صممنا صفحة tech.asp لتظهر النتائج بالشكل التالي:



--------------------------------------------------------------------------------

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

افتح الملف teach.asp


Code Sample


<%@ Language=VBScript CodePage = "1256"%>

<html dir=rtl>

<!--#include file="pageheader.txt" -->

<p align="center"><span lang="ar-sa"><font face="Simplified Arabic">إليكم آخر
المستجدات في الساحة التقنية</font></span></p>

<!--#include file="connection.txt" -->

<%

'أوامر اختيار الجدول واستدعاء البيانات منه


selectSQL="select * from tech_news"

set rs=ADO.execute(selectSQL)

'أوامر استعراض البيانات

do while not rs.eof

%>

<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%">

<%

       rs.movenext

loop

ADO.close

%>

<!--#include file="pagefooter.txt" -->

سنقوم بحذف الأسطر التي تقوم بعرض تاريخ الخبر وعنوانه ونصه. وسنضع مكانها السطر التالي:

Code Sample

<b><a href="body.asp?field=tech_news&id=<%=rs("id")%>"><%response.write rs("subject")%></a></b>


هذا السطر سيقوم بعرض عناوين الأخبار فقط، وستكون هذه العناوين على شكل روابط. هذه الروابط تتميز بإرسالها (قيمة) للصفحة التالي. سنشرح معنى هذا الأمر في الدرس التالي.
سيصبح كود الصفحة بعد التعديل بهذه الصورة :-
Code Sample

<!--#include file="connection.txt" -->

<%

'أوامر اختيار الجدول واستدعاء البيانات منه


selectSQL="select * from tech_news"

set rs=ADO.execute(selectSQL)

'أوامر استعراض البيانات

do while not rs.eof

%>

<div align="center">

<center>

<b><a href="body.asp?field=tech_news&id=<%=rs("id")%>"><%response.write rs("subject")%></a></b>
 

</table>

</center>

</div>

<hr color="#DFDFFF" width="90%">

<%

       rs.movenext

loop

ADO.close

%><!--#include file="pagefooter.txt" -->


لمشاهدة الصفحة:   عالم اليوم - أخبار تقنية

------------------------------------------------------------------------------------------




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

لسحب الصفحات التي تم تصميمها في هذا الدرس:الدرس الثامن




أغسطس 29, 2002, 04:33:13 مساءاً
رد #36

ابو الحروف

  • عضو خبير

  • *****

  • 1993
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #36 في: أغسطس 29, 2002, 04:33:13 مساءاً »
السلام عليكم ورحمة الله وبركاته

طبعا سيدي الكريم... فأنا لا اريد ان اعطل على الاخرين

وبارك الله فيك على كل ما تبذله

أغسطس 31, 2002, 10:31:18 مساءاً
رد #37

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #37 في: أغسطس 31, 2002, 10:31:18 مساءاً »
الدرس التاسع: استدعاء بيانات من القاعدة من خلال روابط (استخدام QueryString)


وضعنا في الدرس السابق رابط لصفحة body.asp وكان الرابط على الشكل التالي:
Code Sample
body.asp?field=tech_news&id=<%=rs("id")%>


والآن سنقوم بتصميم صفحة body.asp وشرح معنى كل كلمة في الرابط.

قم بفتح صفحة teach.asp وقم بإعادة حفظها باسم body.asp لنجري عليها التغييرات المطلوبة. سأقوم بجميع التغييرات مرة واحدة، ثم سأقوم بشرحها بعد ذلك.. فلنجري هذه التعديلات معا:
Code Sample

<%@ Language=VBScript CodePage = "1256"%>

<html dir=rtl>

<!--#include file="pageheader.txt" -->

<!--#include file="connection.txt" -->

<%
field=request.querystring("field")
id=request.querystring("id")

selectSQL="select * from "&field&" where id="&id
set rs=ADO.execute(selectSQL)
%>

<p align="center"><b><font face="Simplified Arabic" size="5" color="#C11111"><%response.write rs("subject")%></font></b><p align="center">
<p align="left"><font face="Simplified Arabic" size="3"><%response.write rs("add_dat")%></font></p>
<p><b><font face="Simplified Arabic" size="3"><%response.write rs("body")%></font></b></p>

<%ADO.close%>

<!--#include file="pagefooter.txt" -->


والآن، لنتعلم معاني الأوامر الجديدة في هذه الصفحة. السطر التالي : field=request.querystring("field") يعني:

تحديد متغير باسم field وذلك بكتابة: field=

قيمة هذا المتغير سيتم استقبالها عن طريق رابط وذلك بكتابة: request.querystring

سيشار للقيمة في الرابط بكلمة field وذلك بكتابة: ("field")

لنتذكر الآن الرابط الذي قمنا بكتابته في الدرس السابق: body.asp?field=tech_news&id=<%=rs("id")%>

لقد أرسلنا قيمة field من الصفحة السابقة إلى هذه الصفحة من خلال رابط. وهذه القيمة هي tech_news . وللتوضيح أكثر.. لنفترض أن الرابط كالتالي: body.asp?section=tech_news&id=<%=rs("id")%>

في هذه الحالة يجب تغيير field=request.querystring("field") إلى field=request.querystring("section") .

السطر الثاني id=request.querystring("id") له نفس وظيفة السطر الأول، مع الفارق في المتغير وقيمته. وبالنظر للرابط السابق body.asp?field=tech_news&id=<%=rs("id")%> يتضح أن قيمة المتغير id ستتغير بتغير الموضوع. وذلك لأن القيمة تأخذ من قاعدة البيانات عن طريق أمر selectSQL في الصفحة السابقة.

من الأمور الجديدة في هذا الدرس أيضا هو التطوير الذي حدث لأمر selectSQL . حيث تم استبدال اسم الجدول (بعد كلمة From) باسم متغير (في حالتنا هذه Field) وهذا يعطي مرونة أكبر. حيث أن SelectSQL ستتغير بتغير قيمة Field .. أي أنه يمكننا استخدام هذه الصفحة لعرض جميع أقسام الأخبار في الموقع وليس فقط للأخبار التقنية.

أيضا تم إضافة شرط Where لـ SelectSQL وبإمكاننا وضع الشرط الذي يناسبنا.. وفي درسنا الحالي كان الشرط: id="&id أي: عندما تكون قيمة id في الجدول المطلوب في القاعدة تساوي قيمة المتغير id في هذه الصفحة.

بقية الـ Code قمنا بشرحة في الدروس السابقة.
--------------------------------------------------------

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

لسحب الصفحات التي تم تصميمها في هذا الدرس:الدرس التاسع

أغسطس 31, 2002, 10:41:48 مساءاً
رد #38

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #38 في: أغسطس 31, 2002, 10:41:48 مساءاً »
الدرس العاشر: تصميم صفحة news.asp


تعلمنا الكثير من الأمور في الدروس السابقة. لذا لن أحاول شرح المزيد من الأوامر في هذا الدرس، حتى يكون خفيفا وسهلا. فتصميم صفحة news.asp مشابه جدا لـ tech.asp لذا سنقوم بالخطوات التالية لإنشاء الصفحة:

1- افتح قاعدة البيانات وصمم جدولا باسم general_news بنفس مواصفات جدول tech_news .

ملاحظة: بإمكانك بدلا من تصميم الجدول من جديد. نسخ الجدول الحالي، وذلك بعمل الخطوات التالية.

تظليل الجدول.

ضع مؤشر الفأرة على اسم الجدول واضغط بزر الفأرة الأيمن.

اختيار Copy من القائمة التي ستظهر.

في المساحة البيضاء الفارغة اضغط مرة أخرى زر الفأرة الأيمن واختر منه Past.

سيظهر لك صندوق حوار يسألك فيه عن اسم الجدول، فاكتب في الخانة البيضاء المخصصة لاسم الجدول general_news. وتحت هذه الخانة البيضاء ستجد ثلاثة خيارات هي: Structure Only و Structure and Data و Append Data to Exiting Table. اختر الخيار الأول Structure Only.

واضغط على ok.

احفظ قاعدة البيانات.

2- افتح صفحة tech.asp واحفظها باسم news.asp وأجر التعديلات التالية عليها.

غير الجملة الترحيبية (التي كانت إليكم آخر المستجدات على الساحة التقنية) لتتناسب مع الصفحة الجديدة. أفضل استبدال كلمة (التقنية) بكلمة (العالمية) فقط.

في عبارة selectSQL="select * from tech_news" غير اسم الجدول tech_news إلى general_news

في الرابط لصفحة المقال body.asp وهو :
Code Sample
body.asp?field=tech_news&id=<%=rs("id")%>
غير tech_news إلى general_news

بهذه الخطوات البسيطة نكون قد انتهينا من صفحة news.asp. وفي الدرس التالي سنصمم صفحة البحث.

-------------------------------------------------------

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

لسحب قاعدة البيانات:  الدرس العاشر- 1

لسحب الصفحات:  الدرس العاشر- 2

سبتمبر 01, 2002, 12:53:21 صباحاً
رد #39

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #39 في: سبتمبر 01, 2002, 12:53:21 صباحاً »
الدرس الحادي عشر: تصميم صفحة search.asp


تصميم صفحة search.asp لن يأخذ الكثير من الوقت. افتح صفحة tech.asp وقم بحفظها باسم search.asp. ثم امسح الأوامر التي بداخلها. أي اسمح من الصفحة التالي:

Code Sample
<%@ Language=VBScript CodePage = "1256"%>

<html dir=rtl>

<!--#include file="pageheader.txt" -->

<p align="center"><font face="Simplified Arabic">إليكم آخر
المستجدات في الساحة التقنية</font></p>

<!--#include file="connection.txt" -->

<%

'أوامر اختيار الجدول واستدعاء البيانات منه

selectSQL="select * from tech_news order by add_dat desc"

set rs=ADO.execute(selectSQL)


'أوامر استعراض البيانات

if not rs.eof then
do while not rs.eof
%>
<div align="center">
<b><a href="body.asp?field=tech_news&id=<%=rs("id")%>"><%response.write rs("subject")%></a></b>
</div>
<hr color="#DFDFFF" width="90%">
<%
rs.movenext
loop
else
end if

ADO.close

%>

ثم ارجع لنمط التصميم العادي في الفرونت بيج (Normal). وقم بعمل التالي:

اختر قائمة Insert ومنها Form ومنها Textbox.

سيظهر لك التالي:

  



امسح زر Reset فنحن لسنا بحاجة له ، وبإمكانك وضع المربع في منتصف الصفحة. وذلك بالضغط عليه واختيار (توسيط) من شريط الأدوات في الفرونت بيج. ثم اتبع الخطوات التالية:

اضغط على مربع النص بزر الفأرة الأيمن، ستظهر لك قائمة اختر منها: Form Properties فتسظهر لك الشاشة التالية:



اختر منها Sent to other ثم اضغط على زر Options:



ستظهر لك الشاشة التالية:



في خانة Action اكتب اسم الصفحة التي سترسل إليها القيمة المدخلة في هذا الـ Form . في مثالنا هذا، استخدمنا Textbox كنوع من أنواع الـ Form وسنرسل القيم إلى صفحة بعنوان search_result.asp سيتم فيها البحث عن هذه القيم وعرض النتائج. وهذه هي الصفحة التي سنقوم بتصميمها في الدرس التالي.

الفرق بين GET و POST :

أما في خانة Method فقم بتغيير الاختيار Post واجعله Get. الاختلاف بينهما ببساطة هو:

Post : سيخفي القيم المرسلة. إي إن كنت تود إرسال قيم سرية من صفحة لأخر (ككلمة المرور مثلا) فبإمكانك اختيار Post.

Get : ستظهر القيمة المرسلة للصفحة الثانية في شريط العنوان. وهذا مفيد في حالة البحث، حيث سيشاهد الباحث الكلمة التي بحث عنها في شريط العنوان فسيتأكد إن كان قد كتبها بشكل صحيح أم لا.

اضغط زر Ok ومرة أخرى Ok.

مرة أخرى اضغط بزر الفأرة الأيمن على مربع النص. واختر هذه المرة Form Field Properties فستظهر لك الشاشة التالية:



في خانة Name اكتب اسم الحل. ثم اضغط Ok.

اضغط بزر الفأرة الأيمن على زر Submit. واختر هذه المرة Form Field Properties فستظهر لك الشاشة التالية:



اكتب في خانة Value/lable الكلمة التي تود أن تظهر بدلا من Submit . في مثالنا هذا. سنكتب: ابحث.

أخيرا.. سيكون Code صفحة search.asp كالتالي:

Code Sample
<%@ Language=VBScript CodePage = "1256"%>

<html dir=rtl>

<!--#include file="pageheader.txt" -->

<form method="GET" action="search_result.asp">
<p align="center">
<input type="text" name="keyword" size="20"></p>
<p align="center"><input type="submit" value="ابحث" name="B1"></p>
</form>

<!--#include file="pagefooter.txt" -->


في الدرس التالي، سنصمم صفحة search_result.asp التي ستبحث عن الكلمة المطلوبة، وتعرض النتائج.

--------------------------------------------------

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

لسحب الصفحات:الدرس الحادي عشر

سبتمبر 01, 2002, 01:07:32 صباحاً
رد #40

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #40 في: سبتمبر 01, 2002, 01:07:32 صباحاً »
الدرس الثاني عشر: تصميم صفحة البحث وعرض النتائج search_result.asp


افتح صفحة search.asp وقم بحفظها باسم search_result.asp. ستجد الـ Code كالتالي:

Code Sample
<%@ Language=VBScript CodePage = "1256"%>

<html dir=rtl>

<!--#include file="pageheader.txt" -->

<form method=>"GET" action="search_result.asp">
<p align="center">
<input type="text" name="keyword" size="20"></p>
<p align="center"><input type="submit" value="ابحث" name="B1"></p>
</form>

<!--#include file="pagefooter.txt" -->


والآن.. لنقم بالتغييرات المطلوبة. أولى هذه التغييرات هو إعلام البرنامج أن هنالك (متغير) يجب أخذ قيمته من الصفحة السابقة serach.asp هذا المتغير هو keyword والذي يحتوي على الكلمة المطلوب البحث عنها. وكما فعلنا في الدرس التاسع، سنستخدم Request.QueryString للقيام بهذه المهمة. لذا قم بمسح هذه الأسطر:

Code Sample
<form method="GET" action="search_result.asp">
<p align="center">
<input type="text" name="keyword" size="20"></p>
<p align="center"><input type="submit" value="ابحث" name="B1"></p>
</form>


واكتب بدلا منها:

Code Sample
<%
keyword=request.querystring("keyword")
%>


والآن سنقوم بالبحث عن الكلمة في الجدول بعد استقبالها من صفحة البحث باستخدام أمر Select:

Code Sample

<%@ Language=VBScript CodePage = "1256"%>

<html dir=rtl>

<!--#include file="pageheader.txt" -->
<!--#include file="connection.txt" -->

<%
keyword=request.querystring("keyword")

SelectTechSQL="select * from tech_news where subject like '%"&keyword&"%'  "
set rs=ADO.execute(SelectTechSQL)

%>

<!--#include file="pagefooter.txt" -->


الملاحظ في أمر Select هنا أننا أضفنا كلمة Like . كلمة Like تغني عن علامة ( = ). ويمكن أن تعبر عن مساواة كلية أو جزئية. ولتوضيح ذلك، لنفترض المثال التالي: إن قمنا باستخدام المساواة الكلية وبحثنا عن "خالد" فستظهر لنا النتائج التي تحتوي على كلمة "خالد". أما إن استخدما المساواة الجزئية فستظهر لنا النتائج التي تحتوي على: خالد، خالدا، الخالد، الخالدون، خالدون .. الخ

للتعبير عن المساواة الكلية نكتب Like وبعدها اسم المتغير .. في مثالنا هو Keyword فنكتبه بالصيغة التالية: "&keyword&"

للتعبير عن المساواة الجزئية نكتب Like وبعدها اسم المتغير بين علامات النسبة المؤوية .. في مثالنا هو Keyword فنكتبه بالصيغة التالية:
Code Sample
'%"&keyword&"%'


والمقصود في عبارة Select في هذا المثال هو: اختر أي شي من جدول Tech عندما تكون القيمة في العمود Subject مساوية أو مشابهة للقيمة في المتغير Keyword . للتوضيح لنفترض المثال التالي:

لديك في القاعدة العناوين الثلاثة التالية:

1 - لغة ASP متطورة وسهلة.

2 - لغة PHP سهلة ومتطورة.

3 - البرمجة بـ C++ ممتعة.

عند إدخال كلمة "لغة" للبحث عنها، سيظهر لنا أول عنوانين كنتائج للبحث. حيث أن أمرنا يبحث في العنوان.

إن كنا نود تغيير حقل البحث، فبإمكاننا تغيير اسم العمود الذي يتم البحث فيه.. كأن نكتب
Code Sample
"select * from tech where body like '%"&keyword&"%'  "


في حال رغبتنا بالبحث في نص الموضوع وليس عنوانه. أما إن أردنا البحث في كافة الحقول، فعلينا كتابتها جميعا والربط بينها باستخدام أحد دوال الربط المنطقيةوهي Or . لنعد كتابة SelectTechSQL مرة باسخدام Or :

Code Sample
SelectTechSQL="select * from tech_news where subject like '%"&keyword&"%' or body like '%"&keyword&"%'  "


في هذه الحالة سيتم عرض النتائج الذي توجد بها كلمة البحث في:

1- العنوان.

ا2- لمحتوى.

3- العنوان والمحتوى.

الأمر السابق سيبحث عن الكلمة في جدول Tech_news وللبحث في كلا الجدولين ( Tech_news و General_news ) بإمكاننا كتابة أمر لكل جدول، كالتالي:


Code Sample
<%@ Language=VBScript CodePage = "1256"%>

<html dir=rtl>

<!--#include file="pageheader.txt" -->
<!--#include file="connection.txt" -->

<%

keyword=request.querystring("keyword")

' أوامر البحث في جدول الأخبار التقنية
SelectTechSQL="select * from tech_news where subject like '%"&keyword&"%' or body like '%"&keyword&"%'  "
set rsTech=ADO.execute(SelectTechSQL)

' أوامر البحث في جدول الأخبار العامة
SelectGeneralSQL="select * from tech_news where subject like '%"&keyword&"%' or body like '%"&keyword&"%'  "
set rsGeneral=ADO.execute(SelectGeneralSQL)

%>

<!--#include file="pagefooter.txt" -->


لا تنسى أن تضع ملف الربط بقاعدة البيانات، وذلك لأننا سنحتاج لقراءة بعض البيانات منها. بعد كتابة أوامر Select علينا كتابة أوامر عرض النتائج. وهي بسيطة قمنا بكتابتها سابقا في الدرسين السابع والثامن. سنكتب واحدة لـ SelectTechSQL وأخرى لـ SelectGeneralSQL .

Code Sample
<%@ Language=VBScript CodePage = "1256"%>

<html dir=rtl>

<!--#include file="pageheader.txt" -->
<!--#include file="connection.txt" -->

<%

keyword=request.querystring("keyword")

' أوامر البحث في جدول الأخبار التقنية
SelectTechSQL="select * from tech_news where subject like '%"&keyword&"%' or body like '%"&keyword&"%'  "
set rsTech=ADO.execute(SelectTechSQL)

' أوامر البحث في جدول الأخبار العامة
SelectGeneralSQL="select * from general_news where subject like '%"&keyword&"%' or body like '%"&keyword&"%'  "
set rsGeneral=ADO.execute(SelectGeneralSQL)

%>

<p align="center"><font face="Simplified Arabic" size="3">نتائج البحث</font></p>

<%

' أوامر عرض نتائج الأخبار التقنية
do while not rsTech.eof

%>

<p><b><a href="body.asp?field=tech_news&id=<%=rsTech("id")%>"><%response.write rsTech("subject")%></a></b></p>

<%

        rsTech.movenext

loop

' أوامر عرض نتائج الأخبار العامة
do while not rsGeneral.eof

 %>

<p><b><a href="body.asp?field=general_news&id=<%=rsGeneral("id")%>"><%response.write rsGeneral("subject")%></a></b></p>

<%

        rsGeneral.movenext

 loop

ADO.close

%>

<!--#include file="pagefooter.txt" -->


بذلك نكون قد انتهينا من تصميم محرك البحث. وسنشرح في الدرس التالي إن شاء الله كيفية تصميم سجل الزوار.

---------------------------------------------------------

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

لسحب الصفحات:الدرس الثاني عشر

سبتمبر 01, 2002, 09:53:57 مساءاً
رد #41

ابو الحروف

  • عضو خبير

  • *****

  • 1993
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #41 في: سبتمبر 01, 2002, 09:53:57 مساءاً »
السلام عليكم

اعود فاشكرك سيدي الكريم ابو عبد الرحمن على كل ما تقوم به, وهو كثير مذهل...

والحقيقة انني اجد اللسان عاجزا عن شكرك الشكر اللائق بك...

رعاك الله وحفظك واسكنك في جنانه

سبتمبر 02, 2002, 01:36:29 صباحاً
رد #42

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #42 في: سبتمبر 02, 2002, 01:36:29 صباحاً »
أخي الحبيب والغالي أبو الحروف

وعليكم السلام ورحمة الله وبركاته

لن تكون أكثر امتناناً من نفسي لنفسي أن خدمت مثلكم ،
وهذا بحد ذاته شرف مروم ، ومنزلة عالية ..
وأرجو ان تسير الأمور معك كما يرام ..
وإن كان ثمة ملاحظة رصدتها على الدروس فآمل إبلاغي بها على الفور ،
فالذي يظهر لي أنك المتابع الوحيد لهذه الدروس
وقد يكون أخي العزيز ( الخالد ) متابعاً ولكنه متابع صامت ..
ويرجع ذلك برأيي إلى أفضلية الــ HTML  عن الــ ASP للغالبية العظمى ..
رغم أنني أرى أن الأخيرة أرقى وأمتع وأرحب وأشمل ..
ختاماً سيدي تقبل خالص تحيتي وتقديري على متابعتكم وتشجيعكم ..
ولا يفوتني أن أدعو لأخي خالد الحر من موقع عالم النور صاحب هذه الدروس الذي أسأل الله أن يجعلها في ميزان حسناته وأن يزيده نورا .

أخوك المحب أبو عبدالرحمن

سبتمبر 02, 2002, 09:05:15 مساءاً
رد #43

أبو عبدالرحمن

  • عضو متقدم

  • ****

  • 718
    مشاركة

    • مشاهدة الملف الشخصي
على بركة الله سلسلة دروس تصميم المواقع
« رد #43 في: سبتمبر 02, 2002, 09:05:15 مساءاً »
الدرس الثالث عشر: تصميم سجل الزوار (صفحة guest.asp)

سنصمم سجل الزوار من صفحتين، صفحة عرض التواقيع: guest.asp ، وصفحة إضافة توقيع sign_book.asp . ومن الطبيعي أن نبدأ بصفحة sign_book.asp لإضافة التواقيع. إلا أننا سنفترض أن هنالك تواقيع في سجل الزوار وسنصمم صفحة العرض، ثم نصمم الصفحات الباقية.

والآن، لنصمم الجدول في قاعدة البيانات التي سيحتوي على التواقيع. افتح قاعدة البيانات، وسنصمم جدول باسم guest_book وهذا هو شكله:




  • انتبه لنوعية الحقول، فالحقل id نوعه AutoNumber. والحقل add_dat نوعه Date/Time . والحقل comment نوعه memo . وبقية الحقول text .

  • انتبه لكون بعض الحقول التي من نوع Text حجمها (Field Size) تساوي 255 (هذه الحقول هي name , email , website ).

  • انتبه لكون الحقلين email و website تم تغيير القيمة Allow Zero Length من : No إلى Yes .

    قم بإدخال بيانات في هذه الخانات.

    الآن، سنستخدم المهارات التي تعلمناها سابقا، لربط الصفحة view_book.asp بقاعدة البيانات، واستخدام الأمر Select لاختيار المعلومات من القاعدة، والأمر Response.Write لطباعة (عرض) المعلومات في الشاشة. وأوامر HTML لتزيين طريقة العرض. واختصارا للوقت. سأضع Code صفحة view_book.asp كاملا في هذه الصفحة.

    Code Sample
    <%@ Language=VBScript CodePage = "1256"%>

    <html dir=rtl>

    <!--#include file="pageheader.txt" -->

    <p align="center"><font face="Simplified Arabic">مرحبا بكم في
    سجل الزوار.. وملاحظاتكم تسعدنا</font></p>


    <!--#include file="connection.txt" -->

    <%

    selectSQL="select * from guest_book order by add_dat desc"

    set rs=ADO.execute(selectSQL)

    do while not rs.eof

    %>
    <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("add_dat")%></b></td>
    </tr>
    <tr>
    <td width="100%" dir="rtl" bgcolor="#ECECFF"><b>الاسم : <a href="mailto:<%response.write rs("email")%>"><%response.write rs("name")%></a></b></td>
    </tr>
    <tr>
    <td width="100%" dir="rtl" bgcolor="#DFDFFF"><b>الموقع الشخصي : <a href="<%response.write rs("website")%>"><%response.write rs("website")%></a></b></td>
    </tr>
    <tr>
    <td width="100%" dir="rtl" bgcolor="#ECECFF"><b>طريقة
    الاستدلال على الموقع : <%response.write rs("link")%></b></td>
    </tr>
    <tr>
    <td width="100%" dir="rtl" bgcolor="#DFDFFF"><b>تقييم الموقع : <%response.write rs("ranking")%></b></td>
    </tr>
    <tr>
    <td width="100%" dir="rtl"><b>التعليق : <%response.write rs("comment")%></b></td>
    </tr>
    </table>
    </center>
    </div>
    <hr color="#DFDFFF" width="90%">

    <%
    rs.movenext
    loop

    ADO.close
    %>

    <!--#include file="pagefooter.txt" -->


    بذلك نكون قد انتهينا من تصميم صفحة عرض التواقيع، وسنصمم صفحة إضافة التوقيع في الدرس القادم إن شاء الله.

    ----------------------------------------------------

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

  • سيتم توفير الصفحات في الدرس التالي.

  • سبتمبر 02, 2002, 10:13:40 مساءاً
    رد #44

    ابو الحروف

    • عضو خبير

    • *****

    • 1993
      مشاركة

      • مشاهدة الملف الشخصي
    على بركة الله سلسلة دروس تصميم المواقع
    « رد #44 في: سبتمبر 02, 2002, 10:13:40 مساءاً »
    سيدي ابو عبد الرحمن

    ها انا قد تمكنت من تنفيذ ما ذكر في الدرس الاخير... وانا على استعداد تام للدروس التالية...

    ابقاك الله شعلة يستنار بها...