این جلسه، می خواهیم یک صفحه asp را به قطعات کوچک شکسته و هریک از اجزای آنرا مورد مطالعه قرار دهیم. در پایان این جلسه، شما باید فهم بالایی بر روی بعضی از ساختارهای صفحه ASP داشته باشید.
این جلسه، شما با چندین چیز که قبلا دیده اید سروکار دارید. اگر شما یک برنامه نویس با تجربه نیستید، این اصطلاحات شامل چندین مفهوم جدید می باشد که به طور مختصر آنها را آموخته بودید. ولی نگران نباشید، آنها به صورت کاملتر در جلسات بعدی بیان خواهند شد.
● آشنایی با اسکریپتهای ASP
برای شروع، آخرین مثال جلسه قبل را دوباره تکرار می کنیم. این یک صفحه یا اسکریپت یا کد ASP است که عبارت Good Evening را در صورتی که زمان بعد از ظهر باشد چاپ می کند و در صورتی که قبل از ظهر باشد عبارت Good Morning را چاپ می کند:
<% @ Language="VBScript" %>
<% Option Explicit %>
The current time is <% = Time ( ) %>

<%
If Datepart("h",time()) >= ۱۲ then
After noon
Response.Write "Good Evening"
Else
Before noon
Response.Write "Good Morning"
End If
%>
▪ تجزیه و تحلیل:
اولین چیزی که مورد بررسی قرار میدهیم Tag های <% و %> می باشد. شما باید قبلا با Tag های HTML آشنا شده باشید. برای مثال شما می دانید که متون بین و به صورت حروف توپر نمایش داده می شوند؛ این Tag ها نیز شبیه آنها هستند. متنی که بین دو عبارت <% و %> ظاهر می گردد به عنوان کدهای ASP در نظر گرفته می شود. به این خاطر است که سرویس دهنده، قبل از فرستادن صفحه برای مرورگر وب، آنها را مورد پردازش قرار می دهد. برای مثال، در خطوط ۷ تا ۱۵ شما Tag های باز و بسته را مشاهده می کنید. آنها به این معنی هستند که خطوط بین ۸ تا ۱۴ کدهای ASP می باشند. حالا سعی کنید خطوط ۷ تا ۱۵ را از داخل اسکریپت خارج کرده و این صفحه را از طریق مرورگر وب مشاهده نمایید، مطمئنا چیزی شبیه به خروجی زیر را خواهید دید؛ چه اتفاقی افتاده است؟
The current time is ۰۶:۱۰:۰۷
If datepart("h",time()) >= ۱۲ then After noon Response.Write
"Good Evening" Else Before noon Response.Write "Good Morning" End If
بدون استفاده از Tag های <% و %>، سرویس دهنده تان متن های بین خطوط ۸ تا ۱۴ را به عنوان کدهای ASP در نظر نمی گیرد. در عوض فکر می کند که آنها متون ساده ای همانند هر صفحه HTML دیگر می باشند. فراموش کردن هر یک از این دو Tag باعث ایجاد خطا در طی اجرای ASP می گردد. که خوشبختانه این مسئله به راحتی قابل حل می باشد.
حال به مثالهای زیر توجه کنید:
<% @ Language="VBScript" %>
<% Option Explicit %>
The current time is <% = Time ( ) %>

<%
If Datepart("h",time( )) >= ۱۲ then
%>
<%
After noon
%>
<%
Response.Write "Good Evening"
%>
<%
Else
%>
<%
Before noon
%>
<%
Response.Write "Good Morning"
%>
<%
End If
%>
▪ تجزیه و تحلیل:
در اینجا ما برای هر خط از کدهای ASP یک جفت از Tag ها را استفاده نموده ایم. یک Tag باز در ابتدای خط ۷ قرار دارد، سپس یک خط از کد نوشته شده و بعد Tag بسته شده است. این شیوه، ناکارا و برای خواندن مشکل می باشد. در HTML، این مانند آن است که برای اینکه یک جمله را به صورت Bold دربیاوریم هر کدام از حروف جمله را به وسیله Bold Tag به صورت توپر دربیاوریم.
چیزهایی وجود دارند که شما باید با دقت در مورد آنـها فکر کنید. درست است که از Tag های HTML در داخل Tag های HTML می توانید استفاده نمایید ولی از Tag های ASP در داخل Tag های ASP نمی توانیم استفاده نماییم. برای مثال کد زیر یک خطا ایجاد می نماید:
<%
<%
Respnse.Write "Good Morning"
%>
%>
شما می توانید از Tag های ASP همراه با Tag های HTML استفاده نمایید، همانطوری که از <% ... %> استفاده نمودید.
حال، برای اثبات این امر مثال نوشته شده در زیر را اجرا کنید:
<% @ Language="VBScript" %>
<% Option Explicit %>
<%
Response.Write "Hello"
%>
<%
Response.Write "my friends"
%>
این فایل را با نام Listing۰۲۰۳.asp ذخیره نمایید. اما مطمئن شوید که شما این فایل را در پوشه ای که PWS را در آن قرار داده اید قرار دارد.
▪ تجزیه و تحلیل:
خط ۸ یک Bold Tag از HTML عادی می باشد. سپس در خط ۶ یک بلوک از کد ASP شروع می شود. خط ۷ یک کلمه را در خروجی می نویسد، خط ۸ هم بلوک کد ASP را می بندد و خط ۹ HTML Tag را می بندد. خطوط ۱۰ تا ۱۲ یک بلوک دیگر از کدهای ASP را تولید کرده اند که یک پیغام دیگر را چاپ می نماید.
خروجی زیر نشان می دهد که کد بالا بر روی مروگر وب چطور به نظر می رسد. توجه کنید که HTML Tag Bold بر کد ASP در خط ۷ مقدم می باشد ولی نه بر روی کد ASP در خط ۱۱. اگر ما Tag های ASP را در خطوطی جداگانه نسبت به کدهای واقعی ASP قرار دهیم هیچ اتفاق بخصوصی رخ نخواهد داد.
▪ Hello my friends
ما به طور عموم جملات ASP را به شکلی که در فرم ۱ آمده است استفاده می کنیم زیرا خواناتر می باشند:
۱) <%
Response.Write "Hello"
%>
۲) <% Response.Write "Hello" %>
۳) <% Response.Write "Hello"
%>
۴) <%Response.Write "Hello"
%>
به هر حال، هر چهار عبارت فوق مرسوم و صحیح می باشند.



سایت ماکرومدیاx