منتديات احمد سعيد عبده
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني

اذهب الى الأسفل

دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني Empty دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني

مُساهمة من طرف احمد سعيد الخميس أبريل 23, 2009 12:24 pm

دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني



بسم الله الرحمن الرحيم


الكائن Request- الجزء الثاني


في الدرس السابق تعرفنا على ثاني كائن في مجموعة كائنات ASP وهو الكائن Request، وذكرنا بأن هذا الكائن باستطاعته الوصول للمعلومات التي يرسلها المستخدم للخادم سواء بالطريقة GET أو بالطريقة POST. و تعرفنا بالتفصيل على كيفية الوصول للمعلومات المرسلة بالطريقة GET بواسطة الكائن Request.

وفي درسنا الجديد سنتعلم معاً كيفية الوصول للمعلومات المرسلة باستخدام الطريقة POST.


Request.Form

العبارة Request.Form تمكّن الخادم من الوصول للمعلومات المرسلة بواسطة الطريقة POST. و هذه الطريقة هي عكس الطريقة GET حيث أنها تقوم بإرسال المعلومات المدخلة للنموذج بشكل منفصل عن عنوان الصفحة التي ستعالج هذه المعلومات !!

وبما أن المعلومات المدخلة سترسل منفصلة عن العنوان، فإننا نستطيع أن نقول أن العبارة Request.Form تمكّن الخادم من الوصول للقيمة التي أدخلها المستخدم للنموذج من النموذج مباشرة !! وبطبيعة الحال فإن القيم المدخلة لن تكون ملحقة بعنوان الصفحة التي ستعالج هذه القيم، وهذا ما يساعدنا على التمييز بين الطريقتين GET و POST كما سنرى بعد قليل.

كل ما نحتاجه لفهم الموضوع بشكل عملي هو إنشاء نموذج نستخدم فيه الطريقة POST وليكن اسمه POSTForm.htm كالنموذج التالي:

.................................................. .............................
<HTML>
<BODY>
<CENTER>
<FORM ACTION="UserComment.asp" METHOD="POST">
<B>الاسم<BR><BR> <INPUT TYPE="text" NAME="name"><BR><BR></B>
<B>البريد الإلكتروني<BR><BR><INPUT TYPE="text" NAME="Email"><BR><BR></B>
<B>أكتب ملاحظاتك على الموقع<BR><BR><TEXTAREA NAME="UserComments"></TEXTAREA><BR><BR></B>
<INPUT TYPE="submit" NAME="submit" VALUE=" موافق">
</FORM>
</CENTER>
</BODY>
</HTML>

.................................................. .............................




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

دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني Pic1_4


نحتاج أيضاً لإنشاء صفحة ASP التي نستطيع بواسطتها الوصول للمعلومات المدخلة في النموذج. هذه الصفحة سنسميها UserComment.asp سنضع بها الكود التالي :

.................................................. ...
<%
Dim UserName
Dim UserEmail
Dim UserComment

UserName=Request.Form("name")
UserEmail=Request.Form("Email")
UserComment=Request.Form("UserComments")

Response.Write("<CENTER><B>المستخدم " & UserName & "، لقد أضفت الملاحظات التالية : <BR>" & UserComment &"<BR>فشكراً لك </B></CENTER>")
%>
.................................................. .....



صفحة ASP هذه تقوم بالوصول إلى المعلومات التي أدخلها المستخدم في النموذج، وحيث أن طريقة الإرسال المستخدمة في النموذج هي الطريقة POST، فالوصول لهذه المعلومات المدخلة سيكون من نفس النموذج بواسطة العبارة Request.Form الموضحة في الأسطر الثلاث المضللة:

حيث أن المتغير name و Email و UserComments هي عبارة عن أسماء مربع النص الذي حددناه في النموذج السابق.

بمجرد تعبئة النموذج السابق والضغط على الزر موافق سينتقل بي المتصفح للصفحة UserComment.asp والتي ستبدو كما في الصورة :


دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني Pic2_4

* لاحظ أن عنوان الصفحة UserComment.asp لا يحتوي على استعلام!
* إذا أردت أن تعرض جميع متغيرات وقيم النموذج المدخلة بواسطة المستخدم فيمكنك ذلك بواسطة الجملة التالية فقط ! :


<%=Request.Form%>

* إذا كان النموذج عبارة عن مربع خيارات فنستطيع أن نحدد قيمة أحد الخيارات التي اختارها المستخدم تبعاً لرقم الفهرس كما فعلنا مع العبارة Request.QueryString تماماً :

................................................
<%
Dim IndexNO
IndexNO=Request.Form("Country")(3)

%>

.................................................




* وأيضاً يمكننا الحصول على عدد المتغيرات الموجودة في النموذج بواسطة العبارة التالية :

........................................
<%
Dim FormVar

FormVar=Request.Form.Count

%>

..........................................






*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*



قبل أن ننهي هذا الدرس البسيط، سأذكر إحدى مكونات الكائن Request وهو ServerVariables !

ServerVariables:

ستستفيد من العبارة Request.ServerVariables في الحصول على قائمة بجميع متغيرات الخادم !!! كاسم الخادم، وعنوان IP الخادم، و نوع برنامج الخادم الذي يستخدمه بالإضافة إلى رقم IP العميل ونوع المتصفح لديه أيضاً !!

تستطيع القيام بذلك كالتالي:


.................................................. ........
<HTML>
<BODY>
<CENTER>
<B> هذه قائمة بجميع متغيرات الخادم :<BR>
<%
For Each Var in Request.ServerVariables
Response.Write(Var & "<BR>")
Next
%>
</B>
</CENTER>
</BODY>
</HTML>
.................................................. ......



هذا الكود يعوم بعرض جميع متغيرات الخادم باستخدام تكرار For Each ....Next في الـ VB****** للوصول إلى كل بند في مصفوفة متغيرات الخادم !

وأيضاً باستخدام العبارة Request.ServerVariabls للحصول على هذه القائمة !

احفظ الصفحة بالاسم serverVariable.asp وافتحها في المتصفح لديك لتعطيك نتيجة مشابهه لهذه :


دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني Pic3_4



هذه قائمة بالمتغيرات، فماذا لو أردت قيمة أحد هذه المتغيرات؟!!!

سنأخذ أحد هذه المتغيرات لنحصل على قيمته بواسطة كود ASP بسيط يؤدي الغرض دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني Smile .. سنختار على سبيل المثال المتغير SERVER_NAME

نستطيع الحصول على قيمة هذا المتغير كالتالي:


.................................................. ....
<%
Dim ServerVal
ServerVal=Request.ServerVariables("SERVER_NAME")
Response.Write(" <CENTER>SERVER_NAME = " & ServerVal & "</CENTER>")
%>
.................................................. ..


كل ما فعلناه هنا هو أني حددت اسم المتغير في العبارة Request.ServerVariables ووضعت هذه العبارة في المتغير ServerVal ثم قمت بطباعة هذا المتغير بواسطة العبارة Response.Write!

سنحفظ الصفحة السابقة بالاسم serverValue.asp مثلاً، وستكون النتيجة :


دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني Pic4_4

بإمكانك تجربة هذا الكود للحصول على قيم المتغيرات الأخرى بنفس الطريقة دروس الايه اس بي - ASP كائنات ASP- الكائن Response -الجزء الثاني Wink


*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*

وبهذا أستطيع أن أقول أننا تعرفنا على أهم مكونات الكائن Request وهي QueryString، Form، و أخيراً ServerVariables!


*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*


احمد سعيد
احمد سعيد
المدير العام
المدير العام

ذكر عدد الرسائل : 350
العمر : 38
الموقع : https://ahmedsaid.yoo7.com
العمل/الترفيه : الرياضة
المزاج : تمام
تاريخ التسجيل : 02/04/2008

https://ahmedsaid.yoo7.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

- مواضيع مماثلة

 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى