مقدمه
ASP راه حل شرکت ماکروسافت براي ايجاد صفحات پوياي وب ميباشد. با گسترش اينترنت و www در زندگي روزمره، ايجاد وب سايت يکي از بخشهايي است که به سرعت در حال رشد مي باشد.همواره در تار جهان گسترده، طراحي وب سايت بر ايجاد گرافيکهاي تخيلي و زيبا و صفحات وب ساده براي خواندن مبتني است.به همين دليل امروزه سايتهاي وب محل تلاقي کاربران شده است.
اگرچه خلق يک وب سايت دلپذير مهم ميباشد، اما تمرکز اصلي، از طراحي گرافيکي به سمت طراحي مبتني بر برنامه نويسي ميباشد. براي مثال، تصور کنيد که شما ميخواهيد يک وب سايت از چيزي که ميتوانيد بفروشيد ايجاد کنيد.
طراحي مبتني بر برنامه نويسي، صفحات وبي ايجاد ميکند که ميتوانند اطلاعات صورت حسابهاي کاربران را جمع آوري و ذخيره کند.
اگر شما احتياج به وب سايت پويا(Dynamic) داريد، ASP يک راه حل فوق العاده و ساده ميباشد. امروز، شما اولين قدم را در داخل دنياي ASP ها برمي داريد.
Active Server Pages چيست؟
به زبان مايکروسافت : Active Server Pages يک محيط باز براي ترکيب HTML ، اسکريپت ها و کامپوننت هاي سرور قابل استفاده مجدد ActiveX است که امکان ساختن راه حل هاي ديناميک و قدرتمند تجاري وب محور رو به شما مي دهد . ASP امکان اسکريپت نويسي طرف سرور با استفاده از VBScript و JScript رو براي IIS ميدهد .
نکته . قبل از اينکه سرور يک صفحه ASP را به مرورگر بفرستد ، اسکريپت هاي طرف سرورآن صفحه را اجرا مي کند . براي اينکه بين صفحات ASP و HTML معمولي تفاوت وجود داشته باشد ، صفحات ASP را با پسوند asp ذخيره مي کنند .
با گذشت سالهاي متمالي، ما تغييرات مهمي را در موضوع اينترنت مشاهده مي نماييم. ابتدا، اينترنت به منظور يک سرويس دهنده ارتباطات متوسط براي بخشهاي دولتي و موسسات دانشگاهي بود. با پيدايش www، اينترنت يک محيط دوستانه چند رسانه اي شد. در اصل سرويس دهنده اينترنت به عنوان يک مکان براي آدمهاي با ذوق به منظور خلق صفحات خانگي بود. اما هر چه افراد بيشتري به اينترنت وارد شدند، اينترنت به يک منبع اطلاعاتي براي همه افراد تبديل شد. وفقتي تعداد افراد Online به يک محدوده بحراني رسيد، شرکتهايي که محصولات و خدمات را مي فروختند شروع به Spring up نمودن کردند.اين شرکتها هيچ حضور فيزيکي نداشتند، فقط يک حضور مجازي داشتند!. براي مثال شما ميتوانيد از سايت Amazon.com کتاب بخريد، اما شما قادر نخواهيد بود که کتابفروشي Amazon.com را در نزديکي خود پيدا کنيد.
همانگونه که اينترنت به صورت يک فروشگاه موفق شد، طراحي صفحات وبسايت هم تغيير پيدا کرد. در روزهاي اوليه www، ؛HTML به منظور ايجاد صفحات وب ايستا استفاده مي شد. اما امروزه، صفحات وب ايستا به سرعت در حال منسوخ شدن ميباشند. تصور کنيد اگر Amazon.com تنها از صفحات وب ايستا تشکيل شده بود!؛ شما نمي توانستيد فهرستهاي کتاب جستجو کنيد. شما نمي توانستيد يک در خواست را به صورت Online صادر کنيد، شما نمي توانستيد توضيحات کاربران ديگر را بخوانيد. اين است دليل يک سرمايه گذاري مطمين که اگر Amazon.com از صفحات وب پويا(Active Server Pages) استفاده نمي کرد، نمي توانست کتابهاي زيادي بفروشد.
شما ميتوانيد صفحات وب پويا را از راهاي زيادي ايجاد نماييد. راه حل ماکروسافت براي ساختن صفحات وب پويا استفاده از Active Server Pages ها مي باشد که بصورت مختصر بر آن ASP مي گويند.
نکته: سايت هاي وب بزرگ زيادي از ASP به منظور سرويس دادن پويا به اسناد وب استفاده مي کنند. براي مثال Buy.com, HotBot.com, Dell.com از ASP براي ساخت سايت هاي وب پوياي محاوره اي خود استفاده کردند.
ASP شامل دوبخش مي باشد: 1- کدهاي برنامه نويسي 2- کدهاي HTML. کدهاي برنامه نويسي ميتوانند به وسيله تعدادي از زبانهاي دست نويس(Scripting Language) نوشته شوند.
واژه جديد: يک زبان دست نويس(Scripting Language) يک دستور زبان مخصوص است که براي اجراي دستورات بر روي کامپيوتر استفاده مي شود.
زبانهاي اسکريپت نويسي دست نويس(Scripting Language) مربوط به وب که محبوب مي باشند عبارتند از: VBScript و JavaScript. وقتي يک صفحه ASP درست مي کنيد، شما ميتوانيد از يکي از چهار زبان برنامه نويسي استفاده کنيد.(شبيه به دستورات زبان Visual Basic)
تعريف زبانهاي دست نويس
VBScript: معمولترين زبان برنامه نويسي تحت وب براي ASP مي باشد.
JScript: شبيه به JavaScript ميباشد.
PerlScript: شبيه به زبان Perl ميباشد.
Python: يک زبان اسکريپت نويسي قدرتمند مي باشد که بطور معمول براي توسعه وب به کار مي رود.
با ASP چه کارهايي مي شود انجام داد ؟
کارهاي زيادي هست که با ASP انجام می شود ، از جمله :
- شما مي توانيد تاريخ ، زمان و ديگر اطلاعات را به روش هاي مختلف نشان بدهيد
- شما مي توانيد يک فرم نظر سنجي بسازيد و از بازديد کنندگان سايت خود بخواهيد که آن را پر کنند.
-شما مي توانيد يک بانک اطلاعاتي داشته باشيد که مردم از طريق وب به آن دسترسي داشته باشند ، مي توانيد اين بانک اطلاعاتي را به روز کنيد ، چيزي را به آن اضافه يا ازآن کم کنيد و کارهايي از اين دست
- شما مي توانيد بعضي از بخش هاي سايت خود را بوسيله کلمه عبور محافظت کنيد تا مطمئن باشيد که فقط افراد مجاز قادر به استفاده از اطلاعات بخش هاي محافظت شده هستند.
مقايسه بين صفحات HTML و ASP
اجازه بدهيد روند مشاهده يک صفحه وب را به صورت خلاصه بررسي کنيم . وقتي شما يک آدرس را در نوار آدرس مرورگر خود تايپ مي کنيد مثلا : http://www.yahoo.com مرورگر يک درخواست به سرور مي فرستد . سرور به درخواست مرورگر شما پاسخ مي دهد و سند درخواستي شما را برمي گرداند ( البته اين وسط DNS ها آدرس IP دامين سايت را پيدا مشخص مي کنند به اضافه يک سري کارهاي ديگر که به اين مسائل کاري نداريم ) . اگر اين سند يک فايل قابل نمايش براي مرورگر باشد ، کد فايلی که توسط مرورگر ترجمه مي شود و شما اطلاعات فايل را مي بينيد . اگر هم قابل نمايش نباشد برنامه مرورگر سعي در بارگذاري ( دانلود ) فايل مي کند . فرض کنيد شما آدرس زير را در مرورگر خود تايپ کنيد : http://www.somewhere.com/somepage.htm . اين درخواست يک فايل از نوع HTML است . HTML مخفف Hyper Text Markup Language به معني زبان نشانه گذاري ابرمتن است . اگر چنين فايلي روي سرور سايت وجود داشته باشد . مرورگر کد فايل را ترجمه مي کند و شما صفحه somepage.htm را مي بينيد . براي دستيابي به کد يک صفحه از نوع HTML در اينترنت اکسپلورر مي توانيد از منوي View گزينه Source را انتخاب کنيد . اين کد چيزي شبيه به کدهاي زير خواهد بود
Page Title
......
نمونه سورس يک فايل HTML . به جاي نقطه چين ها عناصري قرار مي گيرد که بايد در صفحه نمايش داده شود
اما فرض کنيد فايل HTML اي که شما درخواست کرده ايد روي سرور سايت وجود نداشته باشد . در اين صورت شما يک پيغام خطا دريافت خواهيد کرد ( خظاي 404 ) مبني بر اين که مرورگر موفق نشده است فايل مورد نظر شما را پيدا کند . حالا فرض کنيم شما در نوار آدرس مرورگر خود آدرس يک فايل را تايپ کنيد که قابل نمايش نيست . مثل فايل هاي exe يا zip يا mp3 و ... . در اين صورت برنامه مرورگر سعي مي کند فايل مورد نظر را دانلود کند .
اما بالاخره فرق يک صفحه ASP با يک صفحه HTML چيست ؟ صفحات HTML استاتيک هستند يعني به صورت پويا تغيير نمي کنند ، اگر بخواهيد يک صفحه HTML چيزي غير از آنچه که در حال حاضر نمايش مي دهد را نشان بدهد چاره اي جز دست بردن در سورس صفحه نيست . اما يک صفحه ASP به دليل اينکه مجموعه اي از اسکريپت ها و کدهاي HTML هست اين قابليت را دارد که به صورت خودکار و بر اساس شرايط محتواي مختلفي را نمايش بدهد . فرض کنيم از شما خواسته شود که يک صفحه طراحي کنيد براي نمايش جدول مسابقات ليگ برتر کشور . خوب اگر شما به صورت عادي و با استفاده از جدول هاي HTML کار را پياده سازي کنيد مجبور هستيد هر بار که مسابقه اي انجام مي شود ، بررسي کنيد که جايگاه هر تيم چه تغييري مي کند ، امتيازات و تفاضل گل و بقيه چيزها را هم خودحساب کنيد و بعد بر اساس آن ، صفحه را يک بار ديگر طراحي کنيد . اين بار با يک جدول که بر اساس اطلاعات جديد طراحي شده . اين يک کار وقت گير و بيهوده است . تازه امکان اشتباه هم کم نيست . اما حالا اگر فرض کنيم که اين پروژه را با ASP پياده سازي کرده باشيم . بر اين اساس فقط بايد يک سرويس طراحي کنيم که يک نفر بياید و نتيجه هر مسابقه را وارد کند . نتايج براي پردازش به سرور فرستاده مي شود ، بعد از پردازش بر اساس اسکريپت هايي که درون صفحه هست ، جدول به روز مي شود .
نکات قابل توجه :
اجازه بديد که اولين صفحه ASP را بنويسيم :
Hello World !
<%
Response.Write "Hello, World !"
%>
سطرهاي بالا را در يک اديتور بنويسيد و بعد با نام hello.asp ذخيره کنيد . hello.asp را در فولدر wwwroot ذخيره کنيد .
براي اجراي صفحه ، اينترنت اکسپلورر رو باز کنيد و در نوار آدرس بنويسيد : http://localhost/hello.asp . عبارت زير کارش اين است که درون صفحه کلمات Hello, World را نمايش مي دهد .
Response.Write "Hello, World !"
روش ديگر برنامه سلام دنيا
يک راه کوتاهتر براي نمايش سلام دنيا در صفحه . کد زير را ببينيد
Hello World !
<%= "Hello, World !" %>
فقط توجه کنيد که علامت = را درست بعد از تگ شروع اسکريپت قرار بديد . عملکرد اين روش درست مثل استفاده از Response.Write هست .
بعد از اينکه صفحه hello.asp را در مرورگر خود اجرا کرديد . از منوي view گزينه Source را انتخاب کنيد . تا سورس صفحه را ببينيد . همون طور که مشاهده مي کنيدخبري از اسکريپت ها نيست . جاي تمام اسکريپت ها را عبارت هاي HTML گرفته اند. امتحان کنيد
مثال ديگر : نمايش تاريخ ...
حالا اجازه بدهيد يک گام به جلو برداريم و صفحه ای بسازيم که تاريخ امروز را به کاربر نشان ميدهد . کد زير را در نظر بگيريد .
Hello World !
<%= Date %>
منابع و مراجع :
ASP , LARRY ULLMAM انشارات ناقوس
WWW.DANESH.BIZHAT.COM
WWW.NAGHOOSPRESS.IR