متغیرها محلی برای ذخیره اطلاعات هستند
همانطور که قبلا گفته شد ، asp بصورت پیش فرض از دستورات vbscript استفاده می کند

پس اگر بخواهید از این پیش فرض استفاده نمائید به صورت زیر می توانید متغیر تعریف کنید

( امیدوارم اگر با vbscript اشنا نیستید با vb یعنی visual basic اشنا باشید )

 
تعریف متغیر
 

 

<!DOCTYPE html>
<html>
<body>

<%
dim name
name="Donald Duck"
response.write("My name is: " & name)
%>


</body>
</html>

مشاهده و اجرای برنامه کامل

 

dim name

متغیری به نام name را تعریف می کند

کلمه dim در vbscript  و visual basic برای تعریف متغیر است

 

name="Donald Duck"

خط بالا نشان می دهد که چگونه می توان مقداری را به یک متغیر نسبت داد

 

response.write("My name is: " & name)

این خط نشان می دهد که چگونه می توان مقدار یک متغیر را به یک رشته دیگر وصل کرد و انرا نمایش داد

 
ارایه
 ارایه برای ذخیره کردن مجموعه ای از داده ها تحت یک نام واحد بکار می رود

 مثال زیر روش ذخیره تعدای نام در ارایه را نشان می دهد

برای نوشتن دستورات asp این برنامه هم از زبان vbscript استفاده شده است

توجه : برای استفاده از تگ های html درون دستورات asp ، باید ان تگ ها را بعنوان یک رشته درون کوتیشن و در دستور write نوشت

 

<!DOCTYPE html>
<html>
<body>

<%
Dim famname(5),i
famname(0) = "Jan Egil"
famname(1) = "Tove"
famname(2) = "Hege"
famname(3) = "Stale"
famname(4) = "Kai Jim"
famname(5) = "Borge"

For i = 0 to 5
      response.write(famname(i) & "<br>")
Next
%>


</body>
</html>

 

Dim famname(5),i

با استفاده از یک دستور dim دو متغیر یکی i و دیگری ارایه ای به نام famname با 6 خانه تعریف شده است

به طور پیش فرض اندیس اول صفر است

 

famname(0) = "Jan Egil"
famname(1) = "Tove"
famname(2) = "Hege"
famname(3) = "Stale"
famname(4) = "Kai Jim"
famname(5) = "Borge"

 

مقدار هر خانه در ان قرار گرفته است

توجه نمائید که اندیس را درون پرانتز می نویسیم

 

For i = 0 to 5
      response.write(famname(i) & "<br>")
Next

 

توسط یک حلقه مقدار هر خانه famname در خروجی نمایش داده می شود

 
 مشاهده و اجرای برنامه کامل
 
روش کاربرد تگ های html در قسمت Asp
 مثال زیر نشان می دهد چگونه شش تگ عنوان را در خروجی با دستورات asp ایجاد می کنیم

 

<!DOCTYPE html>
<html>
<body>

<%
dim i
for i=1 to 6
   response.write("<h" & i & ">Heading " & i & "</h" & i & ">")
next
%>


</body>
</html>

 
 مشاهده و اجرای برنامه کامل
 
دست یابی به زمان سروربا دستورات vbscript
مثال زیر قسمت های مختلف زمان سرور را نمایش می دهد 

 

<!DOCTYPE html>
<html>
<body>
<%
dim h
h=hour(now())

response.write("<p>" & now())
response.write("</p>")
If h<12 then
   response.write("Good Morning!")
else
   response.write("Good day!")
end if
%>

</body>
</html>

 

 

h=hour(now())

تابع  now تاریخ و زمان فعلی سیستم را می دهد (از انجا که برنامه در سرور اجرا می شود پس تاریخ زمان سرور است )

 

تابع hour مقدار ساعت را از زمان درون پراتزش بدست می اورد

در این دستور این ساعت را در متغیر h قرار می دهد

 

response.write("<p>" & now())

در این دستور تگ p باز شده و

قرار است مقدار تاریخ زمان سیستم سرور در یک پاراگراف نمایش داده شود

 

response.write("</p>")

در این دستور تگ p بسته شده است

 

( دو خط بالا روش کاربرد تگ های html را در بین دستورات asp نشان می دهد )

 

 

If h<12 then

یک شرط روی مقدار ساعت می گذارد

 

   response.write("Good Morning!")

در صورتیکه مقدار ساعت سرور کمتر از 12 باشد ، پیام صبخ بخیر می دهد

 

   response.write("Good day!")

در غیر این صورت پیام روز بخیر می دهد

 مشاهده و اجرای برنامه کامل
دست یابی به زمان سروربا دستورات javascript
 در خط اول مثال زیر ، اعلام کرده ایم که برنامه Asp با دستورات javascript نوشته خواهد شد

 

<%@ language="javascript" %>
<!DOCTYPE html>
<html>
<body>
<%
var d=new Date()
var h=d.getHours()

Response.Write("<p>")
Response.Write(d)
Response.Write("</p>")
if (h<12)
   {
   Response.Write("Good Morning!")
   }
else
   {
   Response.Write("Good day!")
   }
%>

</body>
</html>

 

var d=new Date()

با کلمه var متغیری به نام d تعریف شده

این متغیردر واقع  یک شی تاریخ زمان از نوع کلاس date خواهد بود

در عین حال مقدار تاریخ زمان سرور وب در خود اسم d قرار می گیرد

 

var h=d.getHours()

کسانی که با مفهوم کلاس اشنایی دارند می دانند که هر کلاس مجموعه ای از متدها و صفتها است که برای دسترسی به انها باید نام انها را بعد از یک علامت نقطه بعد از شی از نوع ان کلاس قرار داد

و می دانید که هر چند تا شی که بخواهید می توانید از نوع ان کلاس تعریف کنید و از ه کدام بدون اینکه با هم تداخل پیدا کنند استفاده نمائید

 در این دستور متد gehours شی d فراخوانی شده

دستورات این متد را خود طراحان جاوا اسکریپت قبلا نوشته اند و انرا در مرورگرها تعبیه کرده اند

این متد مقدار ساعت موجود در سرور وب را بدست اورده در متغیر h قرار می دهد

 

 

Response.Write("<p>")

تگ p باز می شود

( اگر بخواهید خروجی Asp را با تاثیر گرفتن از تگ های html ببینید یکی از روشها همین است که تگ هارا در دستور write و درون کوتیشن بصورت رشته بنویسید )

 

Response.Write(d)

مقدار d نمایش داده می شود که همانتاریخ زما ن سرور وب است

 

Response.Write("</p>")

تگ p بسته می شود

 دستور if مشابه ان چیزی است که در مثال قبلی توضیح داده شد

 مشاهده و اجرای برنامه کامل
 
طول عمر متغیرها
 متغیرهایی که بیرون از فضای زیر برنامه ها (procedure) تعریف می شوند تا پایان اجرای برنامه و در همه جای اسکریپت های Asp قابل استفاده اند

 اما متغیرهایی که درون زیر برنامه ها وجود دارند با شروع به اجرای زیر برنامه به وجود می ایند و با خاتمه ان از بین می روند .

اسکریپت های بیرون از زیر برنامه قادر به شماسایی و استفاده و ویرایش داده های درون این متغیرها نیستند

 اگر می خواهید متغیرهای درون یک فایل Asp در یک فایل Asp دیگر قابل استفاده باشد باید انرا از نوع session یا متغیرهای  application تعریف کنید
 Session Variables

 متغیرهای session برای ذخیره کرد ن اطلاعات یک کاربر بکار می رود

و این اطلاعات در تمام صفحات وب ان سایت قابل استفاده خواهد بود

برای مثال کاربری اطلاعاتی را در صفحه او سایت وارد می کند

از این اطلاعات مثل نام و فامیل و ... می توان در تمام صفحات سایت استفاده کرد

 
 Application Variables
 متغیرهای application هم در تمامی صفحات یک وب سایت قابل استفاده اند
 از این متغیرها می توان برای ذخیره اطلاعات تمام کاربران یک application استفاده کرد