بخشی از مقاله
معرفی پروژه
پروژه ای را که در پیش رو دارید مربوط است به سایت فروش محصولات شرکت تولیـد و پخش محصولات غذایی زرگل آسیا.
این سایت جنبه های مختلف فعالیت های شرکت را شامل ميگردد که عبارتند از:
فروش محصولات تولیدی توسط کارخـانه، فروش محصولات دفتر فروش و بخش مدیریت که در فصول مربوط به پیاده سـازی پروژه و تجزیه
و تحلیل پروژه تک تک مباحث از نقطه نظر طراحی و پیاده سازی مورد بررسی قرار گـــــرفته است.
در این پروژه از نرم افزارهای Macromedia Flash Professional 8،7 Photoshop، Microsoft Frontpage و 3D Xara استفاده شده است. برای ساختن صفحات پویـــــــا از زبان های اسکریپتی ASP، VBScript، JavaScript و نیز Action Script اسـتفاده شده است. همچنین بانک اطلاعاتی پروژه با استفاده از Microsoft Access ایجاد گردیـــده است. نیز در بخش تجزیه و تحلیل از نــــرم افزار Microsoft Project استفاده شده است.
اهداف پروژه
در عصر اطلاعات که صدم های ثانیه در انجام هر کاری تعیین کننده و تاثیر گذارند، اینترنت به دلیل داشتن مخاطبین زیاد در تمام نقاط دنیا شیوۀ مناسبی برای فروش کالا، ارائــه خدمت و در نتیجه کسب درصد بالایی از سهم بازار ميباشد.
شرکت زرگل آسیا نیز با توجه به همین موضوع و برای داشتن فروش بیشتر و بــازار گسترده تر اقدام به فروش محصولات خود از طریق اینترنت نموده و برای این امــــــــر دست به ایجاد سایت اختصاصی شرکت زده است.
Active Server Page چیـست؟
با گذشت سال های متمادی، تغییرات فراوانی در اینترنت به وجود آمده است. در ابتدا اینترنت به منظور یک سـرویس دهنده ارتباطـات برای بخشـهای دولتی و موسـسـات دانشـگاهی به کار میرفت. کم کم با گسترش و تغییرات اینترنت، محتویات صفحـات وب نیز دستخوش تغییر شد. در روزهای اول از HTML برای طراحی صفحـات وب ایستا استفاده ميشد، صفحـات وب ایستا صفحـاتی هستند که نمایش آنـها در زمانهای مختلف و برای کاربران مخـتلف یکسان بوده و تغییری نداشته باشند. امروزه اینگونه صفحـات منـسوخ شده و جای خود را به صفحـات پـویا (Dynamic) داده اند. در این نوع از طراحی ميتوان به صفحـات قابلیت های برنـامه نویسی افزود، مثلاً سایت های خرید و فروش آنلاین و یا موتورهای جستجو که سایتهای پــویا هستند.
راه حل مایـکروسافت برای ساختن صفحـات وب پـویا استفـاده از Active Server Page هـا ميباشد که به اختصار به آن ASP گفته ميشود.
ASP شـامل دو بـخش کـدهای HTML و کـدهای برنـامه نویـسی ميباشـد. کـدهای HTML بـا استفاده ازیک نـرم افزار ویرایشـگر متن مثل Notepad یا WordPad و یا نـرم افزارهای طراحی سایت مثل Front Page نوشته ميشوند. کـدهای اسکریپتی ميتوانند توسط تعـدادی از زبانهای اسـکریپت نویسی مثل VB Script، Java Script و Perl Script نوشـته شوند.
بیشتر صفحـات ASP با استفـاده از VB Script ایجـاد ميشـوند و دسـتورات آن بسیار شبیه VB Script ميباشند.
استفاده از نرم افزار
در روزهای اولیه هیچ ابزار گرافیکــی برای ایجاد صفحـات وب در دسـترس نبود و کـاربران مـجبور بودند از ویرایشگرهای ســاده متنی برای طراحیـهای خود اسـتفاده کنند. پس از مــدّتی ویرایشـگرهای گرافیکی همــانند Microsoft Front Page به بازار آمد که برای ایجاد سریع صفحات وب به کار ميرفت. اگر چه این نرم افزار برای ساختن صفحـات وب ایستا بر مبنای HTML بسیار سودمند ميباشد اما کارآیـی خود را هنگـام طراحـی صفحـات ASP از دست میدهد.
یکی ازکاراترین نرم افزارها برای برنامه نویسی ASP، Macromedia Dream Weaver است کـه طراحـی صفحـات وب پــویـا را بسـیار سـاده و از اکثـر زبانـهای بـرنـامه نویسی وب پــویا حمایت ميکند.
از دیگر نرم افزارهایی که ميتوان طراحی صفحـات وب پویا را به آسـانی به وسیله آن انجـام داد ميتوان به Blue Voda Website Builder اشـاره کرد.
اجرای صفحات ASP
بـــرای اجــرای صفحـات ASP بر روی کامپیوترتان نیـــاز به یک سـرویس دهنده وب دارید. PWS یــا Personal Web Server یک سـرویس دهـنده رایــگان ميباشـد کــه برای همــه ویندورها به جــــز NT، XP و ۲۰۰۰ مناسـب اسـت امــا IIS یــا Internet Information Service سـرویس دهنده وب حــرفه ای مایـکروسـافت است که برای وینـدوزهای NT، XP و ۲۰۰۰ قابـل استفـاده است.
اگر شما بر روی کامپیوترتـــان سـرویس دهنده وبـــی که زبان ASP را حمایت ميکند نصب نکرده باشید هنگـامی که با استفاده از مرورگر وب درخواست یک صفحه ASP ميکنید کادر مـحاوره ای را مشــاهــده خواهید نمود که از شــما ميپرسد که آیا ميخواهید فایل مورد نظر (فایل ASP) را بر روی هـارد دیسک ذخیره کنید یا خیر؟ امــا اگـــــر بر روی کامپیوتر شــما یک سـرویس دهنده وب با قابلیت حمایت ASP نصـب شده باشــد در هنگـام درخواست صفحه ASP آن صفحه توسـط مـرورگر پردازش شده و طی این پردازش مراحل زیر اتفاق ميافتد :۱) کدهای ASP نوشته شده در صـفحه درخواستی توسط مفسٌرسرویس دهنده تفسیر ميشوند.
۲) سـرویس دهنده وب اطلاعـات HTML را برای مـرورگــر ارسال نموده و مـرورگــر نیز این اطلاعــات را برای کاربر اجرا ميکند.
در حالت اول که بـــر روی کامپیوتر شمــــا سرویس دهنده وب وجود نداشتــه باشد مرحله دوم پردازش صورت ن ميگیرد و از آنجــا که مـرورگـر تنها توانایی نمـایش کــدهای HTML را دارد متوجه وجود کدهای HTML درصفحات ASP نشده و قادر به نمایش صفحه درخواستی نخواهد بود.
اما در حالت دوم که برروی کامپیوترتان مرورگــر وب وجود داشته باشد پـس ازپـایـان مرحله دوم شما صفـحه درخـواستیتان را مشــاهده خـواهید نـمـود.
تنظیمات سرویـس دهنده وب
نصب IIS در ویــندوز ۲۰۰۰
آخرین نسـخه IIS نسخـه ۰/ ۵ ميباشـد که با ویـنـدوز ۲۰۰۰ کار ميکند، ASP 3.0 نیـز با ۰/ ۵IIS سـازگـار ميباشـد و در هنگـام نصب ۰/ ۵IIS نصـب ميگــردد.
اگـر از ویـنـدوز NT Server اسـتفاده گـردد نیــاز به ۰/ ۴IIS اسـت. این نســخه از IIS بـــا دسـترسـی به 4.0 Windows NT Option Pack قابل دسـتیابی است. همچنین با اتصال به پایگـاه اینترنتی مایــکروسافت به آدرس زیر ميتوانید به صورت رایگــان این نسـخه IIS را دریافت نمایید.
http://www.microsoft .com/msdownload/ntoptionpack/askwiz.asp
0/ ۵ IIS در ویـنـدوز ۲۰۰۰ موجود ميباشد اگــرچـه در هنگـام نصـب ویــندوز به صورت پیش فرض نصـب نمی شود و برای نصـب آن باید مراحـل زیــر را انجام داد :
از منوی Start گزینه Administrative tools را انتخاب نمـوده و سپس گزینه Configure your server را انتخاب مينماییم، کادری محاوره ای باز ميشود که درسـمت چپ آن چـند گــزینه مـرتبط با پیکربندی وجود دارد، گــزینه Labeled Advanced را انتخاب و بـرروی دکمه Advanced یکبار کلیک میکنیم چهار گزینه در اختیارمان قرار میگیرد که عبارتند از:
Cluster Service، Message Queuing، Support Tools،Optional Components
برروی گــزینه Optional Components کلیک ميکنیم، در پنجره سمت راست توضـیحی در مـورد گــزینه انتخابی Optional Components)) ظاهر ميگردد. اگـــر مراحل را بــه جلوتر برویم و برروی لیــنک Start کلیک راست کنیم اجــرای ویزارد ویندوز را خواهیم دید – Windows 2000 Components Wizard – که اجزای انتخابی ویندوز ۲۰۰۰ نمـایــش داده ميشود. از طریق این ویـــزارد ميتوان اجـــزای ویندوز را نصـب کرد و یـــا از حالت نصـب خـارج نمـــود.
گـــزینه Internet Information Service را پیــدا ميکنیم، در این گـــزینه اجــزای IIS را خــواهیم دید. این اجـزا تعدادی از زیراجزاهای دیگــر سـرویس دهنده www را همانند FTP و SMTP شامل ميشود. برای تعیین اینکه چه اجزایی از IIS نصب و چه اجزایی نصـب نشوند برروی اجزای IIS در ویـزارد ویندوز ۲۰۰۰ کلیک کرده و سپس برروی دکــمه Details کـلـیک ميکنیم،
در این صـورت لیسـتی از اجزایی را که ميتوان همراه با IIS نصـب نــمود خــواهیم دید. کاربرانی که قصـد استفاده از نــرم افزارهای طراحی وب مثل Microsoft Front Page یـــا Visual Interdev را دارند بایـــد مطمئن شـوند کـه بسـط های Front Page 2000 Server را انتخاب کرده اند، بایـد دانسـت
که این بسـط ها به سـایر اجـــزای IIS صدمه ن ميزند. پس از انتخاب همه اجــزای IIS، بــرای نصـب آنها باید برروی دکـمه OK کلیک کرد، این کار بار دیگـر پنجره ویزارد Windows 2000 Server را باز خواهد کرد. برای شروع نصـب IIS 5/0 برروی دکــمه Next کلیک ميکنیم. پس از پـایـان عملیات نصـب امکان دسترسی به ISM (Internet Service Manager) وجود دارد. ISM اجازه ميدهد که خصوصیات و تنظیمات IIS مثل FTP و SMTP پیکربندی گــردند
. همچنین سـاختار دایـرکتوری را بـرای وب سـایت کاربـــر نشـان ميدهد. کاربـــر ميتوانــد خصوصیات وب سایت خود را مشـاهده و اصلاح نماید، این کار از طریق یک کـادر به نــــام Web Site Properties انجام ميگیرد. این کادر دارای Tab های متعددی است که هر کدام از گزینه های زیادی تشکیل شده اند.اگر وارد Tab Directory شویم و گــزینه Local Path را انتخاب کنیـم دایرکتوری فیزیکی ریشـه را خــواهیم دید
که به صـورت پیش فرض در داخل پوشـه \Inetpub \ wwwroot و برروی درایـو ویندوز قرار دارد. البته این مسـیر قابل تغییر است. در زیر گــزینه Local Path نیز چند کـادر انتخاب وجود دارد. دو کـادر Log Visit و Directory Browsing شبیه گــزینه های موجود در کـادرPersonal Server Properties ميباشند. هر دوی این گــزینه ها دقیقاً همانند گــزینه های موجود در PWS هسـتند. با انتخاب Directory Browsing ميتوان به بازدید کنندگانی که در URL، آدرس سایت ما را وارد ميکنند اجازه داد که به اجزای دایرکتوری ما دسـترسـی پیدا کنند.
به منظور اجرای ISM مراحل زیــــر باید انجام گـردد:
Start Programs Administrative tools Internet Manager
نصـب IIS در ویندوز XP
برای نصـب IIS در ویندوز XP ابتدا از پنل کنترل گــزینه Add Or Remove Programs را انتخاب ميکنیم، در سمت راسـت پنجرۀ بـــاز شده گـزینۀ Add / Remove Windows Components را انتخاب کرده که بـا این کار پنجــره ای با همین نام در اختیارمان قرار ميگیرد و در این پنجره گزینۀ Internet Information Service (IIS) را به حالت انتخاب در ميآوریم (تیک ميزنیم). سپس با کلیک برروی دکـــمه Next، نصـب IIS آغاز ميگردد. امـا برای مشـاهده صفحات ASP دو روش
وجود دارد :
١) صفحـات ASP را در پوشـه \Inetpub\wwwroot که در درایو ویندوز قرار دارد ذخیره کرده و یک Web Browse باز کــرده و در نوار آدرس آن نـام صـفحه ASP مورد نظــر را پس از http://localhost/ وارد نمـــایید، صفحه درخواستی نمایش داده ميشود.
٢) از پنل کنترل گزینۀ Administrative Tools را انتخاب کرده و برروی آیکن IIS دوبار کلیک ميکنیم تا پنجره مربوطه باز شـود. در سـتون سـمت چپ روی شاخـۀ Default Web Site از پوشـه Web Sites کلیک راسـت کرده و از منوی ظاهر شده گزینۀNew / Virtual Directory را انتخاب مينمائیم،
یک پنجرۀ ویـزارد باز ميشود که در آن با کلیک برروی Next، یک نام Alias از کاربــــر خواسته ميشود پس از وارد کردن این نام، در مـــرحله بعد در مقابل کادر Directory آدرس صــفحه ASP مورد نظر وارد ميشود – کاربر برای این کار ميتواند از دکــــمه Browse استفاده نماید – پس از کلیک برروی دکـــمه Next در مرحله بعد با کلیک برروی دکمه Finish کار به پــایـان ميرسد. حال در پنجره سمت راست پوشــه ها و صفحات موجود در پوشـه انتخابی از جمله صفحات ASP نمایش داده ميشوند و کاربــــر ميتواند با کلیک راسـت برروی صفحــه مورد نظر و انتخاب گـــزینۀ Browse آن صفحه را در Web Browser مشــــاهده نماید.
ایجاد صـفحات ASP
همانگونه که گفته شد برای اجــــرای صـفحات ASP نیــاز اسـت برروی سیستم یک سـرویس دهنده وب نصـب باشد که تکنولوژی ASP را پشـتیبانی نمایـــــد. پس از نصـب سرویس دهنده و انجام مــــراحل لازم برای اجرای صفحه ASP ميتوان صفحه مورد نظر را مشاهده نمود. از آنجایی که صـفحات ASP کاملاً بر روی سرویس دهنده پردازش ميشوند و تنها HTML به بخش سـرویس گیرنده برگشت داده ميشود هر مرورگـــــــر وبـی ميتواند برای مشـاهده صـفحات ASP مورد استفاده قرار بگیرد. امــا برای ایجـاد صـفحات ASP نیاز به آشــنایی بـا موارد زیر ميباشد :
١) آشنایی با HTML و اسکریپت های ASP
٢) انواع داده ای، متغیرها، ثوابت، آرایه ها
٣) عملگـــــــــرها
۴) ساختــــــارهای کنترلی
۵) تـــوابع و روالـــها
٦) اشــــیاء
٧) فــــرم ها و فیــلدهای آن
٨) Cookie ها
٩) نحوه اتصال به پایــگاه داده
١٠) Password گـذاری صفحات
که هفت مـورد اوّل ضـروری اسـت و
آشـنایی با مـوارد بعدی نیـــز بسیار مفید ميباشد.
در زیر هر یک از موارد فوق را به اختصار شرح ميدهیم.
آشـنایی با اسـکـریپت های ASP
چند TAG مهم در برنامه نویسی ASP به شرح زیر ميباشند:
<%@language = VBScript> و یــا <%@language = 65000> کــه بـه
سرویس دهنده وب زبان مورد استفاده در صفحه جاری را اطلاع ميدهد.
<%option Explicit%> که بیانگــر اینست که همه متغیرها باید به صورت صریح
تعریف گردند.
<% …….…… %> که دسـتورات ASP بـایـد بـیـن ایـن دو TAG نـوشـته شـونـد.
در زبان VBScript کاراکتر زیرخط (Underline) بدین معناست که « ادامه در خط
بعدی ميباشد ».
انواع داده ای، متغیرها، ثوابت و آرایه ها
انواع زیادی از داده ها وجود دارند که باید آنها را در داخل متغیرها ذخیره نمود: اعداد، حروف، اطلاعات و امثال آنها.
یک متغیر بخش کوچکی از حافظه است که به آن نامی نسبت داده ميشود. متغیر را ميتوان همچون یک جعبه تصور کرد که اعداد، حروف و سایر اطلاعات در آن قرار ميگیرند و به وسیله نامی که به آن نسبت داده ميشود، فراخوانی ميگردند. برای تعریف متغیرها از کلمه کلیدی Dim استفاده ميکنیم.
یک ثابت همـانند متغیری اسـت که به آن نا مينسـبت داده شـده و یک داده خاص در آن ذخیره گردیده اسـت. برعکس متغیرها ثوابت زمانی که تعریف ميشـوند یک مقدار ميگیرند و این مقدار دیگر قابل تغییر نیست. برای تعریف ثوابت از کلمه کلیدیConst استفاده ميکنیم.
یک آرایه، مجموعه ای ازمتغیرهاست که یک نام دارد و توسط ایندکس از هم مجزا ميشوند.
به عنوان مثال عبارت روبه رو آرایه X را تعریف ميکند : Dim X(i)
در تعریف آرایه i همان ایندکس است که به وسیله آن به عناصر آرایه ميتوان دسـترسـی پیدا کرد. حد پائین در آرایه ها ٠ و حد بالا i است.
برای نامگذاری متغیرها و ثوابت و نیزآرایــــه ها قوانینی وجود دارد که باید رعایت شوند. این قوانین دو گروه هستند. گروه اوّل قوانینی ميباشند که به کاربر در اجتناب از ایجاد پیغام های خطا کمک ميکنند و گــروه دوّم قوانینی هسـتند که به کاربر کمک ميکنند که بهتر برنامـــه نویسـی کند و کدها راحت تر خوانده و تصحیح شوند.
چند قانون که بدون پیـــروی از آنها سیستم قادر به اجرای کدهای ASP نخواهد بود بدین شرح ميباشد :
از Spaces و Dashes نباید استفاده گردد، زیرا باعث خطا ميشود.
نام متغیرها و ثوابت باید با حروف شروع شوند و استفاده کردن از کاراکتــــــر دیگری
غیر از حروف مجاز ن ميباشد.
نام متغیرها و ثوابت نباید بیش از ۲۵۵ کاراکتر باشد.
برای نامگذاری ن ميتوان از کلمات کلیدی استفاده کـــرد.
عملگـــــــــرها
عملگرها در زبان ASP به چند دسته تقسـیم ميشـوند که عبارتند از: عملگرهای محاسباتی، مقایسه ای، منطقی و عملگرهای مربوط به کار با رشته ها و کاراکترها.
عملگـــــــــرهای محاسـباتی (ریاضی)
عملگرهای ریاضی شامل جمع، تفریق، ضرب، تقسیم و توان ميباشند که کار با آنـــــــــها مشخص است امــــــا نکته در جایی است که باید دانست ازعلامت / برای تقسیم استاندارد و از
علامت \ برای تعیین خارج قسمت استفاده ميشود. از عملگر mod نیز برای مشخص کردن
باقیمانده استفاده ميشود. از علامت ^ نیز برای نمایش عملگر توان استفاده ميشود.
عملگـــــــــرهای مقایسه
عملگـرهای مقایسه ای، عمل مقایسه بین دو آرگومان را انجام ميدهند و خروجی آنها True و یا False است. عملگــــــرهای مقایسه ای درVBScript عبارتند از : مساوی (=)، مخالف (< >)، کوچکتر (>)، بزرگتر (>)، کوچکتر و مساوی (=>) و بزرگتر و مساوی (=<) .
عملگـــــــــرهای منطقی
این عملگــرها یک یا دو مقــدار Boolean راگرفتـــه و یک مقدار Boolean دیگر را بر ميگرداند. خروجی یک عبارت منطقی ميتواند True یـــــــا False باشد.
جدول زیر شامل مهمترین و پرکاربردترین عملگرهای منطقی به همراه کاربردشان است :
عملگرمنطقی
درستی عبارت
A And B
A و B هر دو درست باشند.
A Or B
A یا B یا هر دو درست باشند.
Not A
A نادرست باشد.
A Xor B
A یا B درست باشد ولی نه هر دو .
A Eqv B
هر دو درست یا هر دو نادرست باشند.
گــــاهی اوقات عملگرهای مقایسه ای و منطقی در یک خط با هم به کار ميروند.
عملگـــــــــرهای کار با کاراکتر و رشته
مهمترین آنها عملگر الحاق است که بین دو رشته عمل ميکند، بدین صورت که دو رشـته را تبدیل به یک رشته ميکند و با علامت & نشان داده ميشود. به عنوان مثال :
“Hello” & “ World” ”Hello World”
ساختــــــارهای کنترلی
اسـتفاده از ASP برای صـفحاتی که همیشـه یک جور هستند کاری منطقی به نظر ن ميرسد، قدرت ASP در ساختن صـفحات پویا برروی صـفحات وب ميباشـد. به منظور اینــــکه یک صـفحه پویــــا گردد، صـفحه باید قدرت تصـمیم گیری داشـته باشـد. اینجاسـت که سـاختارهای کنترلی وارد عمل ميشوند. سه نوع اصلی از ساختارهای کنترلی در برنامه نویسی مـــــورد استفاده قرار ميگیرد : منطق شرطی، منطق حلقه ها و منطق انشعابی.
ساختــــــارهای کنترلی منطق شرطی
منطق شرطی یک شرط یا یک سری از شروط را امتحان ميکند و بر پایه نتیجه آن، کـــدی را که باید اجرا گــــــردد را انتخاب مينماید.
If……then statements
جملۀ If……then یکی از معمولترین سـاختارهای کنترلی است و شکل کلی آن بدین صورت
است :
If Condition then
Code Block
End If
کلمه Condition شرط است. زمانـــــی که شرط درست باشد کدهای قسمت Code Block و سپس کدهای بعد از End If اجرا ميشوند. امـــا در صورت نادرست بودن شرط فقط کدهای بعد از End If اجرا ميگردند.
If……then......Else statements
گاهی اوقات لازم است یک قطعه از کدها زمانی اجرا شوند که شرط ما نادرست باشد. در این شرایط از ساختارهای کنترلـی if…then…else استفاده ميکنیم که شکل کلی این دستور به این صورت است :
If Condition then
Code Block 1
Else
Code Block 2
End If
اگـــر Condition مقداری درست داشت، Code Block1 و اگـــر مقداری نادرست داشت، Code Block2 اجرا ميگردد.
Select......case statements
ساختار شرطی دیگری که مورد استفاده قرار ميگیرد، دستورSelect…case ميباشد. این دستور در مواقعی که بخواهیم از If های تودرتو استفاده کنیم ارجحیت دارد و شکل کلـی آن به صورت مقابل است :
Select case expression
Case Value 1
Code 1
Case Value 2
Code 2
.
.
Case Value n
Code n
End Select
ساختــــــارهای کنترلی منطق حلقه ها
منطق حلقه ها یک بلوک از کدها را به صورت تکراری اجرا ميکند البته تا زمانـی که شرط معینی اتفاق بیافتد.
Do……Loop statement
این عبارت به دو صورت ميتواند اجرا شود. Do While…Loop، یک بلوک از کدها را تا زمانی که شرط معینی درست باشد اجرا ميکند و شکل کلی آن بدین صورت است :
Do While Condition
Code Block
Loop
Do Until…Loop بسـیار شـبیه Do While…Loop اسـت و تنهــــــــــا تـفاوت آن با Do Until…Loop در این اسـت که در Do Until…Loop حلقه تا زمانـی تکرار ميشـود که شرط True شود نه False . هر کاری که یکی از آنها انجام دهد حلقه دوم نیـز ميتواند انجام دهد. شکل کلی آن بدین صورت است :
Do Until Condition
Code Block
Loop
For……Next
از این حلقه زمانـی اسـتفاده ميشود که تعداد دفعات تکــرار حلقه مشخص باشد. این حلقه یک بلوک از دستورات را به تعداد دفعات معین اجرا ميکند، شکل کلی آن بدین صورت است :
For variable = start to stop step x
Code Block
Next
Variable شمارنده است، start مقدلر اولیه شمارنده و stop مقدار پـایـانی شمارنده ميباشد. عدد مقابل step نیــــــــز بیانگر مقداری است که در هر بار اجرا به شمارنده افزوده ميشود.
البته step اختیاری است و ميتوان از آن استفاده نکــرد که در این صورت مقدار آن برابر با مقدار پیش فرض یعنی ۱ ميباشد.
For each……Next
از این سـاختار برای تکرار هر عنصر در یک گروه اسـتفاده ميشـود و شـکل کلی آن به این صورت است :
For each var in array
Code Block
Next
ساختــــــارهای کنترلی منطق انشعابی
دو نوع کنترل انشعابـی وجود دارد : توابع و روالها. از این سـاختارها زمانی اسـتفاده ميکنیم که قسمتی از کد را بخواهیم در چندین جای برنامه به کار ببریم.
تفاوت بین توابع و روال ها در این است که روالها خروجی ندارند ولی توابع دارای یک یا چند خروجی هستند.
تـــوابع و روالـــها
یک فایل ASP ميتواند شامل یک ســـــری تابع (Function) و روال (subroutine) باشد.
١) روالها
روالــــها ( سابروتین یا Procedure) زیر برنامه هایی هستند که عملیات خاصی را انجام ميدهند. فراخوانی یک روال به سیستم ميگوید که عملیات موجود در زیر برنامه را تا پـایـان آن انجام دهد و سپس به اجرای معمولی اسکریپت بپردازد.
نحوه ایجاد یک روال :
Sub name
Code Block
End sub
٢) توابع
توابع مقادیر را مورد پردازش قرار ميدهند و حاصل پردازش را بر ميگردانند.
نحوه ایجاد یک تابع : Function-name = some-value
اگر لازم باشد به صورت ناگهانی و قبل از اتمام عادی تابع و یا روال به کار آنها پایان داد باید از دستورات Exit Function و Exit Subroutine استفاده شود.
متغیرهای عمومی (Global) که در بدنه اصلی اسکریپت تعریف ميشوند، ميتوانند توسط
روالها و همچنین توابع مورد استفاده قرار بگیرند.
در جدول زیر با چند تابع مهم VBScript آشنا ميشویم :
نام تابع
عمل
Cint(expression)
پارامتر ورودی تابع تبدیل به عددی از نوع integer ميشود.
Cstr(expression)
پارامتر ورودی تابع تبدیل به یک رشته ميشود.
Date
تاریخ فعلی سیستم را بر ميگرداند.
Time
زمان فعلی سیستم را بر ميگرداند.
DateAdd(interval,
number,date)
به تاریخ، مقدار مشخص شده در پارامتر number اضافه ميگردد. پارامتر interval کدی است که مشخص کننده روزها، هفته ها و ماهها ميباشد.
Dateserial(year,
month,day)
مقادیر تاریخی تغییر ناپذیری را ایجاد ميکند.
Datepart(code,date)
بخش مربوط به اطلاعات تاریخ را از پارامترdate بازیابی ميکند.
UCase(string)
یک رشته را که تمام حروف آن کوچک است، گرفته و حروف کوچک آن را به حروف بزرگ تبدیل ميکند.
Mid(string,start,
Length) Right(string,number)
Left(string,number)
به منظور بازیابی بخشی از رشته به کار ميرود.
Instr(start,string1,string2,comparetype)
بررسی مينماید که آیا رشته string2 در string1 وجود دارد یا نه؟
instrRev(string1,string2,startcomparetype)
بسیار مشابه instr است، با این تفاوت که عمل جستجو از انتهای رشته string1 صورت ميگیرد.
Replace(string,find,replace,start,count,comparetype)
به منظور جایگزاری رشته find با رشته replace مورد استفاده قرار ميگیرد.
Filter(arrstring,searchfor,include,compare
type)
یک آرایه از رشته ها، به نام arrstring، مورد جستجو قرار داده ميشود و یک زیر مجموعه از آن آرایه برگردانده ميشود.
Split(expression,delimiter,count,compare
type)
یک رشته را گــــــرفته و آن را در داخل یک رشته از آرایه از رشته ها ميشکند.
Join(stringarray,delimiter)
عکس تابع split عمل ميکند. این تابع یک آرایه از رشته ها را ميگیرد و در داخل یک رشته به یکدیگر ميچسباند. پارامتر delimiter جدا کننده است.
Lbound(array)
کوچکترین ایندکس معتبر برای یک آرایه را بر ميگرداند.
Ubound(array)
بزرگترین ایندکس معتبر برای یک آرایه را بر ميگرداند.
اشــــیاء یا آبجکت ها
یک آبجکت یک تکه نرم افزار قابل استفاده مکـرر است که توسط متدها قابل استفاده ميباشد. آبجکت ها به افزایش سطح تجرد در صفحه های طراحــی شده کمک ميکند. خاصیت استفاده از آبجکت ها در صفحات همانند توابع و روال ها در ساده و خواناتر کردن کدهاست.
اجزایی که آبجکت ها را توصیف ميکنند Properties یــا خصوصیات نام دارند و کارهایـی را که ميتوان با یک آبجکت انجام داد، متد نامیده ميشود. به عنوان مثال اگر اتـــومبیل را یک آبجکت فرض کنیم، رنگ، کارخانه، مدل، تاریخ ساخت و .... چند Property برای آن محسوب ميشوند. همچنین شتاب گرفتن، تـــــرمـــــز گرفتن و تغییر دنده دادن چند متد برای آبجکت اتومبیل است.
در برنـامه نویسـی، خصوصیات همانند متغیرها کار ميکنند. ميتوان به خصوصیات یـک آبجکت به روش مقابل دسترسی پیدا کرد :
Object . peroperty
به عنوان مثال اگـر آبجـکتی بـا نـام user وجود داشته باشد که دارای خصوصیت name باشـد
این خصوصیت را ميتوان اینگونه تنظیم کرد :
<% user . name = “ name ” %>
بیشـتر متدها رفتاری همانند توابع و روالها دارند بنابراین با فراخوانـی متد یک آبجکت، عملی انجام ميپذیرد. به عنوان مثال اگـر متد go در آبجکت user وجود داشته باشـد که مقداری را بر ميگرداند، با اسـتفاده از دسـتور روبرو مقدار بازگشـتی در یک متغیر ذخیره ميگردد :
My variable = user . go
ASP دارای هفت آبجکت پیش ساختۀ مهم است که عبارتند از:
Response : بـــرای فرسـتادن مقدار به خروجی مورد اسـتفاده قرار ميگیرد. همچنین
این آبجکت ميتواند کنترل کند که اطلاعات چگونه و در چه زمانی ارسال شوند.
Request : برای گرفتن اطلاعات از سرویس گیرنده مورد استفاده قرار ميگیرد.
Application : به منظور اشتراک اطلاعات بین چند سرویس گیرنده که از یک صفحه
بازدید ميکنند مورد استفاده قرار ميگیرد.
Session : به دسترسی یک سرویس گیرنده به یک Application اشاره دارد.
Server : چندین خصوصیت پــــایه و مقدار را فراهم ميآورد و جـــــــزء خصوصیات
پیشرفته ASP به شمار ميآید.
Object Context : به منظور اتصال ASP و Mts بکار ميرود و جزء خصوصیات
پیشرفته ASP به شمار ميآید.
ASP Error : یک ویژگی جدید اسـت که به کاربر اجازه ميدهد تا در مورد خطاهای
اسکریپتی ایجاد شده در صفحه، اطلاعاتی را به دست آورد.
بررسی شئ Response
این آبجکت به کاربر اجازه ميدهد که اطلاعات را به مرورگر ارسال کند و چگونگی ارسال
را کنترل کند. یکی از متدهای مهم و پرکاربرد آبجکت Response، متد Write است. نحــوه استفاده از این متد به صورت مقابل ميباشد :
Response . Write ( “text” )
از متد Write برای نوشتن خروجی در مرورگر استفاده ميشود.
یکی دیگر از متدهای آبجکت Response، متد Buffer ميباشد. برای آشنایی بـــــا این متد ابتدا باید مفهوم Buffering را دانسـت. اطلاعات به دو روش قابل ارسـال هسـتند : شـیوۀ بافر شـده و شـیوۀ بافر نشـده، خروجی بافر نشده فوراً ارسـال ميگردد ولی خروجی بافــر شده تا زمانی که عمل اسکریپت به اتمام نرسیده است، ارسال ن ميشود. به عنوان مثال اگــر در یک صفحۀ ASP دو دستور Response . Write یکی در ابتدا و یکی نیز در انتهای صفحه داشته باشیم،
بدون عمل بافرکردن اولین دستور Response . Write اطلاعات را فوراً به سرویس گیرنده ارسال ميکند بدون این که منتظر Response . Write دوم باقی بماند. ولی با استفاده از بافرینگ همـه خروجی ها در یک بافر روی سـرویس دهنده جمع شده و سـپس یکجا ارسـال ميگردد. Response . Buffer = “true
” باعث فعال شـدن عمل بـــــــافرینگ ميشـود و Response . Buffer = “false” عمل بافرینگ را غیر فعال ميکند. برای فعال یــــــا غیر فعال کردن عمل بافرینگ باید دسـتور مربوط به آن را قبل از ارسـال خـــــــروجی به سرویس گیرنده قرار داد. پس بهتر است این دستور در ابتدای صفحه بعد از تعریف زبــــــان اسکریپتی قرار بگیرد.
متد Clear باعث پاک شدن محتویات داخل بافر ميشود و به این صورت مورد اسـتفاده قرار ميگیرد : Response . Clear
متد دیگر آبجکت Response متد Redirect است. با استفاده از این متد ميتوان کار بـــر را به صفحه دیگری فرستاد و اینگونه فراخوانی ميگردد :
Response . Redirect = “URL”
Url آدرس صفحه وب مورد نظر ميباشـد. اگر صـفحه وب متعلق به سایت دیگری باشد باید آدرس Url به صورت کامل نوشته شود.
متد end نیز متد دیگری از آبجکت Response است. این متد به اجرای یک اسکریپت خاتمه ميدهد.
اگر اطلاعاتی در بافر باشد ارسال ميشوند امـــا تما مياطلاعات بعد از Response . end اجرا و ارسال ن ميشوند.
بررسی شئ Session
این آبجکت برای ذخیره اطلاعات درباره کاربـــر به کار ميرود. زمانـی که کاربر وارد وب سایتی ميشود که در آن از آبجکت Session اسـتفاده شـده است، یک نمونه یا Instance از آبجکت برای کاربــر ایجاد ميشود. این آبجکت مخصوص همان کاربــر است و اطلاعــــات مربوط به همان کاربر در این آبجکت ذخیره ميشود. البته اگر کاربر وارد وب سایتی شود و در آن به مدت بیست دقیقه یــــا بیشتر بدون انجام هیچ عملی بماند آبجکت مربوط به وی از بین ميرود.
آبجکت Session همانند انبــــاری است که هنگام ورود کاربر به سایت به آن کاربر اختصاص ميیابد و تمام صفحات وب سایت ميتواند اطلاعات کاربر را ذخیره یـا بـازیـابی کند. به هر متغیر در این آبجـکت یک متغیر Session گفته ميشـود که با اسـتفاده از دسـتور زیر ساخته ميشود :
Session ( " نام متغیر" ) = مقدار متغیر
با استفاده از دستور زیر نیز ميتوان مقدار یک متغیر Session را بازیابی کرد (خواند).
Session ( " نام متغیر" )
همانطور که قبلاً اشاره شد اگر کاربر برای مدت زمان مشخصی هیچ صفحه ای از وب سـایت درخواست نکند و یـا صفحه ای از آن را Refresh نکند Session مربوط به آن کاربر از بین
خواهد رفت. این مدت زمان در حالت پیش فرض بیست دقیقه است. اما ميتوانیم با استفاده از
یکی از Propertyهای آبجکت Session بـه نام Timeout این مدت زمان را تغییر دهیم، از این Property به صورت مقابل استفاده ميشود :
Session . Timeout = مقدار مورد نظر
همچنین ميتوان با استفاده از متد Abandon یک Session را از بین بــــرد. برای این کار از دستور مقابل استفاده ميشود :
Session . abandon
مشکل اصلی تنظیم زمـان این است که اگر مدت زمان زیاد در نظر گرفته شود، حافظه زیادی در سرور اشغال خـواهد شد و اگر Session بعد از مدتی توسط سرور از بین برود این امکان وجود دارد که کاربر پس ازمدت کوتاهی به سایت برگردد اما به علت کوتاهی زمان Session، اطلاعات کاربر از بین رفته باشد.
بررسی شئ Application
یک برنامه کاربردی در وب از گروهی از فایلهای ASP تشکیل شده که این فایلها بـرای انجام اهدافـی با هم کار ميکنند. آبجکت Application به منظور ارتباط این فایل ها بــا هم به کار ميرود. این آبجکت هم مانند آبجکت Session برای برای ذخیره متغیرها و دسترسـی به آنها از تمام صفحات استفاده ميکند. با این تفاوت که تمام کاربران از یک آبجکت Application ميتوانند به صورت اشتراکی استفاده کنند در حالی که آبجکت Session تنها به یک کاربـــر اختصاص دارد.
آبجکت Application باید به ذخیره اطلاعاتی بپردازد که در اکثــر صفحات استفاده ميشود مانند اطلاعـــات مــربوط به اتصـال به Database . با تغییر متغیری در این آبجکت به صورت اتوماتیک تمام صـفحاتی که از این آبجکت استفاده ميکنند تحت تاثیر قرار ميگیرند. تعریف یک متغیر Application و خواندن آن همانند Session ميباشد و متغیر های Application نیز مانند متغیرهای Session برروی سرور ذخیره ميشوند.
Application ( " نام متغیر" ) = مقدار متغیر Application ( " نام متغیر" )
مقداردهـی اولیـــــــه به متغیرهای Session و Application معمولاً در فایل Global . asa انجام ميپذیرد.
بررسی فایل Global . asa
این فایل فایلی اختیاری اسـت که در آن متغیرهای Session و Application مقداردهی اولیـه ميشوند. علاوه بر آن اسـکریپت های مربوط به event ها را ميتوان درآن مشـخص کـرد. هر Aplication تنها ميتواند یک فایل Global . asa داشته باشد. این فایل ميتواند چهار نوع event را در بر گیــــــــــــرد که عبارتند از :
Application_onstart : زمانی آغـــــــــــاز ميشود که سرور شروع به کار کند. به
عبارتی اولین کاربر از سایت دیدن کند.
Session_onstart : زمانی ایجاد ميشود که کاربری که قبلاً متغیر Session نداشته
است، درخواست اولین صفحه رابکند.
Application_onend : زمانی اتفاق ميافتد که یک وب سرور متوقف شود.
Session_onend : زمانی اتفاق ميافتد که کاربــــر برای مدّت زمان مشخصی، هیچ
صفحه ای را درخواست یا Refresh نکند.
برای ایجاد یک فایل Global . asa ميبایست پس از نوشتن کـدهای آن در یک editor فایل را با نام Global . asa در دایرکتوری ریشه وب سایت ذخیره نمود.
آشنایی با فرم و فیلدهای آن
بدون داشتن راهی برای دریافت اطلاعات از کاربر ن ميتوان صفحات پویـــای خوبی داشت، فرمها راه حل مناسبی برای این منظور ميباشند. در اینترنت همه گونه فرمی که برای اهداف متنوعی طراحی شده اند وجود دارد. به عنوان مثال هنگامی که یک کاربر کلمات کلیدی را در موتور جستجو تایپ ميکند، در حال استفاده از فرم است.
به عبارتی ميتوان گفت که فرم ها یک مکانیزم عبور اطلاعات از یک صفحه وب به صفحه دیگر را فراهم مينماید. یک فرم دو وظیفه دارد :
جمع آوری اطلاعات از کاربر
ارسال اطلاعات به صفحه وب دیگر، برای پردازش برروی آنها
برای ایجاد یک فرم نیـــــاز به دو خط کد HTML مقابل ميباشد :
<form method = “ post / get “ action = “ name page . asp “ >
</form>
خصوصیت method مشخص کنندۀ روش ارسـال اطلاعات ميباشد که ميتواند مقدار get یا post داشته باشد.
خصوصیت action نیز مشخص ميکند که وقتی اطلاعـات فرم پر شد و کاربر برروی دکمۀ Submit کلیک کرد، چه صفحه ای فراخوانی شود.
فرم ها برای دریافت اطلاعات از کاربران نیاز به اجزایـی دارند که کاربر بتواند از طریق آنها اطلاعات را وارد نماید همانند text box هـا، list box هـا، check boxهـا، دکمه ها و....
باید توجه داشت که همه فرم ها باید دارای دکمــــۀ Submit برای انتقال به صفحه دیگر باشند.
ارتباط با کاربر
دو راه برای عبور اطلاعات از یک فرم به صفحه ASP وجود دارد. اولیــــن روش استفاده از Querystring ها ميباشد. این روش موقعی مـــــورد استفاده قرار ميگیرد که خصوصیت method فرم به get تنظیم شده باشد. در این روش اطلاعاتی که در فیلدهای فرم پر ميشوند بـه انتهای آدرس url ميچسبند. روش دوم استفاده از متد post است. مزیت متد post اینست که با استفاده نکردن از Querystring ها اطلاعات کاربــر را پنهان ميکند. خواندن فیلدهای یک فرم برای فرم هایی که از متدهای get یا post استفاده ميکنند، متفاوت است.
اگر در فرم از متد get استفاده شود به شکل مقابل اطلاعات خوانده ميشود :
Request . querystring ( “fieldname“ )
اگر در فرم از متد postاستفاده شود به شکل مقابل اطلاعات خوانده ميشود :
Request . field ( “fieldname“ )
خــواندن و نـــوشتن Cookie ها
Cookie یک فایل کوچک است که وقتی کاربر از یک وب سایت دیدن ميکند توسط سـرور برروی کامپیوتر کاربر ایجاد و ذخیره ميگردد. این فایل تا مدت زمان کوتاهی ميتواند بــر روی کامپیوتر کاربر باقـی بماند و پس از پــایــان این مدت از بین خواهد رفت. این فایل اغلب شامل اطلاعاتی است که برای شناسایی کاربر استفاده ميشود. این اطلاعـات ميتواند شامل نام کاربر، آخرین باری که از وب سایت دیدن کرده، اطلاعاتی در مورد Browser مــــورد استفاده کاربر و همچنینصفحاتی که کاربر دیدن کرده است، باشد.
نحوۀ ایجاد یک Cookie به صورت مقابل است :
Response . cookies ( “ your id “) = " مقدار"
این دستور باید قبل از تگ HTML قرار بگیرد.
با استفاده از دستور مقابل ميتوان یک Cookie را که قبلاً در کامپیوتر کاربر ذخیره شده است، خواند (بازیابی کـــــــــرد.)
Request . cookies ( “ your id “ )
Password گـــذاری صفحات
در مــــــــواردی لازم است استفاده از برخـی صفحات برای کاربران عادی محدود شود و فقط کاربران خاصی اجازه دیدن از صفحات را داشته باشند. برای این کار ميتوان User name و Password در اختیار کاربران قرار داد تا بتوانند از صفحات دیدن کنند. بـــرای این منظور به سه صفحه نیاز است.
در صفحه اول User name و Password از کاربــر خواسته ميشود. پسوند این صفحه به دلیل استفاده نکردن از کدهای ASP، HTML است. اطلاعـــــــات این صفحه به صفحه دوّم فرستاده ميشود که در این صفحه اطلاعـــات دریافتی با User name و Password اصلی مقایسه ميشود. در صورتیکه اطلاعــــــات تائید شود کاربر به صفحه سوّم فرستاده ميشود و در غیر این صورت پیغام خطا برروی خروجی ظاهر ميگردد.
بانک های اطلاعـــاتی
بانک های اطلاعاتی بهترين كارآيـی را برای ذخيره اطلاعاتی بزرگ ايجاد ميكنند. بانکهای اطلاعاتی برای ساده كردن پردازش ذخيره و بازيابی اطلاعات طراحـــی ميشوند. اتصال به يک بانک اطلاعاتی و انتقال اطلاعات هزينۀ سنگينی دارد. بانک های اطلاعات فقط بــــــرای ذخيرۀ مقادير عظيم اطلاعات برای پريودهای زمانـی طولانـی مــورد استفاده قرار ميگيرند.
نحوه اتصال به پایـــگاه داده
قبل از اين که بتوانيد کاری با يک بانک اطلاعاتی انجام دهيد بايد بـــا آن ارتباط برقرار نماييد. آبجکت connectionبرای نگهداری اطلاعاتی در مورد بانک اطلاعاتی که ميخواهيد به آن دسترسـی پيدا نماييد استفاده ميشود. اين آبجکت به همان شيوه ای که کامپوننت ها ساخته ميشوند، با استفاده از Server . Createobject ایجاد ميگردد.
Dim objconn
Set objconn = server . createobject ( "ADODB . Connection" )
مواقع زيادی پيش ميآيد که کاربر مايل است با چندين بانک اطلاعـــــاتی به صورت همزمان ارتباط برقرار نمايد. ممکن است از چندين بانک اطلاعاتی Access یا مخلوطی از بانکــهای اطلاعاتی اکسس، اوراکل و SQL استفاده شود. در این موارد کاربـــر باید از چندین نمونه از آبجکت Connection استفاد نماید.
کار کردن با بانک های اطلاعاتی با استفاده از ASP
برای برقراری ارتباط با یک بانک اطلاعاتی از طریق ASP، نیــــاز به استفاده از کامپوننت ActiveX Data Objects (ADO) ميباشـد. این کامپوننت تعدادی از آبجکت هایـی را که ميتوان از آنها برای اتصال و پرس وجو کردن بانک اطلاعــــاتی استفاده کرد را فراهم ميآورد.
ADO همراه با ASP آمد و به صفحات اجازه ميدهد که به راحتی با بانک های اطلاعاتـــی اتصال برقرار نماید. ADO با هر منبع OLEDB که شامل منابع سازگـــــار با ODBC ميباشند، کار ميکند. بنابراین با بیشتر بانک های اطلاعاتی فعلی سازگار است.
مـدل ADO دارای شش آبجکت است که از این بین دو آبجکت Recordset و Connection بیشتر کاربرد دارد.
آبجکت Connection : کاربر را به منبع اطلاعات متصل مينماید. این اولین قدم برای
کار با بانک های اطلاعاتی است. نحوه تعریف و ایجاد این آبجکت اینگونه است :
Dim objconn
Set objconn = server . createobject ( "Adodb . connection" )
برای اتصال به بانک دو روش وجود دارد :
استفاده از سیستم DSN
استفاده از یک ارتباط DSN – Less
در سیستم DSN یک پیشنهاد وجود دارد و آن اینست که ميتوان به جای قرار دادن اطلاعات در DSN، آنرا در یک رشـته ارتباطی (Connection String) قرار داد. مانند مثال مقابل :
cnn . connectionstring = " driver = {Microsoft Access Driver (*.mdb)} ; " & - " DQB = e:\db3.mdb "
DQB تعیین ميکند بانک اطلاعاتی در کجـای سرویس دهنده قرار داده شده است. این آدرس باید مسیر کاملاً فیزیکی باشد.
برای باز کردن یک ارتباط از متد Open آبجکت Connection استفاده ميشود:
objconn . open
<%
Dim objconn
Objconn = server . createobject (" ADODB .connection ")
objconn . open
%>
و برای بستن یک ارتباط از متد Close آبجکت Connection استفاده ميشود :
objconn . close
آبجکت Recordset : اجازه کار با داده های موجود در جداول را به کاربــــر ميدهد.
این آبجکت دارای مجموعه ای از سطرهای یک جدول است. این آبجکت را ميتوان برای
خواندن و تغییر دادن سطرهای یک جدول و همچنین افزودن مجموعه ای از داده های جدید
به جدول استفاده نمود.
در ابتدای کار نیاز به یک نمونه از آبجکت Recordeset است. طریقه بـه دست آوردن آن این گونه است :
Dim objrs
Set objrs = server . createobject (" ADODB .recordeset ")
بخش اول : مقدمه ای بر بانکهای اطلاعاتی مبتنی بر ارتباط و اکسس ۲۰۰۰
بانک اطلاعاتی رابطه ای چيست ؟
اصطلاح بانک اطلاعاتی برای افراد مختلف معناهای گوناگونی دارد. سالهای سال در دنيای XBaseها ( منظور DBASE، فاکس پرو و CA-Clipper است ) بانک اطلاعاتی به مجموعه ای از فيلدها و رکوردها گفته ميشد.
اکسس چنين چيزی را يک جدول (table) مينامد. در محيط سرويس دهنده / سرويس گيرنده، بانک اطلاعاتی به تمام داده ها، schemaها، indexها، ruleها، trrigerها و روالهای مرتبط با سيستم گفته ميشود. در اکسس بانک اطلاعاتی مجموعـــــه ای از جدول ها، پرس و جو ها ، فرم ها، صفحه های دسترسی داده، گزارشها، ماکروها و ماژول ها است. منظور از "رابطه ای" در "بانک اطلاعاتی رابطه ای" اين است که جدولهای بانک اطلاعاتی با هم ارتباط دارند.
چه نوع کارهايی ميتوان با اکسس انجام داد ؟
بسياری از مواقع در حال توضيح دادن اين مساله هستيم که چه نوع کارهايی را ميتوان با اکسس انجام داد. اکسس امکانات مختلفی را برای نيازهای بانک اطلاعاتی گوناگون ارائه ميکند. با استفاده از اکسس ميتوان شش نوع سيستم تهيه کرد:
سيستم های خصوصی سيستم های بازرگانی کوچک
سيستم های سازمانی سيستمهای اينترنتی / اينترانتی
سيستم های شبکه ای سرويس گيرنده / سرويس دهنده سيستم های شرکتی
اجرای اکسس
اولين قدم برای استفاده از اکسس ( و البته هر برنامه ديگری )، اجرای آن است. ميتوانيد آنرا از منوی start ويندوز، shortcutی که احتمالا روی صفحه ويندوز وجود دارد يا هر ميانبر ديگری که از آن ساخته شده است اجرا کنيد.
برای اجرای آن از منوی start از مسير programs \ Microsoft Office \ Microsoft Office Access 2003 استفاده کنيد. آنچه بعد از اجرا ديده ميشود در شکل ١ آمده است. در اين صفحه که صفحه اصلی Access است، ميتوانيد يک بانک اطلاعاتی موجود را باز کنيد، يک بانک اطلاعاتی جديد بسازيد يا از راهنمای برنامه استفاده کنيد.
نکته :وقتی برای اولين بار اکسس را اجرا ميکنيد پنجره خاصی در سمت راست باز ميشود که قاب وظايف نام دارد. با استفاده از اين صفحه ميتوانيد به راحتی فايلهايی را که قبلا باز شده اند دوباره باز کنيد، يک بانک اطلاعاتی جديد بسازيد يا به بانکهای اطلاعاتی مختلفی که در کامپيوتر شما يا در شبکه وجود دارند دسترسی پيدا کنيد. در واقع اين پنجره، مجموعه ای از ميانبرها برای کارهای رايج در اکسس است که ممکن است کارتان را راحت کند. در عين حال، تمام اين کارها توسط منوها نيز قابل انجام هستند و ممکن است ترجيح دهيد به جای اختصاص قسمتی از صفحه کار خود به اين پنجره، آنرا ببنديد.
شکل ١ : صفحه اصلی برنامه اکسس
باز کردن يک بانک اطلاعاتی موجود
بعد از اجرای اکسس ميتوانيد بانکهای اطلاعاتی را باز کنيد. يک بانک اطلاعاتی، يک بانک يکتا ست که تمام اشياء، مانند جدول ها، پرس و جوها، فرم ها و گزارش ها را در خود دارد. اين فايل در کامپيوتر شما يا در شبکه ذخيره شده است.
برای باز کردن يک بانک اطلاعاتی ميتوانيد از ميانبرهای موجود در پنجره توضيح داده شده در نکته قبلی يا منوهای اصلی برنامه استفاده کنيد. برای روش اول:
١) بر روی دکمه More… که در زير قسمت Open قرار دارد کليک کنيد.
٢) در صورت لزوم با استفاده از فهرست کشويی Look In که در بالای پنجره وجود دارد، ميتوانيد مسير را تغيير داده، به پارتيشن ديگری از هارد يا جای ديگری از شبکه برويد.
٣) بر روی نام پرونده مورد نظر خود کليک کنيد.
۴) دکمه Open را بزنيد.
برای باز کردن بانکی که به تازگی باز شده است از طريق پنجره اوليه بانک به صورت زير عمل کنيد:
١) بانک مورد نظر را در بين بانکهای ليست شده پيدا کنيد.
٢) بر روی آن کليک کنيد تا باز شود.
برای باز کردن بانک موجود، از منوها نيز به صورت زير استفاده کنيد:
١) File | Open را اجرا کنيد تا پنجره آن باز شود.
٢) در صورت نياز از کادر کشويی Look In محل ديگری را در هارد انتخاب کنيد.
٣) بر روی پرونده مورد نظر کليک کنيد تا انتخاب شود.
۴) دکمه Open را بزنيد تا بانک باز شود.
برای باز کردن بانکی که به تـــــــازگی باز شده است نيز ميتوانيد از منوها به صورت زير
استفاده کنيد:
١) منوی فايل را باز کنيد.
٢) بانک مورد نظر را در ليست بانکهای به تازگی باز شده که در پايين منو قرار دارند، پيدا کنيد.
٣) بر روی نام بانک کليک کنيد تا باز شود.
توجه : در هر زمان ميتوانيد يک پرونده باز داشته باشيد. هنگاميکه پرونده ديگری را باز ميکنيد، اکسس پرونده قبلی را ميبندد. البته نگران نباشيد، اگر برنامه خود را ذخيره نکرده باشيد، پيش از بستن آن از شما ميپرسد که مايل به ذخيره آن پرونده هستيد يا خير. با زدن Yes برنامه ذخيره ميشود، با زدن NO از تغييرات چشم پوشی ميشود و به پرونده قديم خود باز گردانده ميشويد ( بدون اينکه پرونده قديمی ذخيره شود ).
نکته: در کادر مکالمه Open ميتوانيد با زدن دکمه My Recent Documents فهرست آخرين پرونده های باز شد را ببينيد. زدن دکمه های My Computer، My Documents، Desktop و My Network Places نيز ميانبرهايی برای هدايت شما به محلهای نام برده شده هستند.
ميز کار اکسس
ميز کار اکسس دارای يک نوار عنوان، يک نوار منو، يک يا چند نوار ابزار و پنجره اصلی بانک اطلاعاتی است.
توجه: منوها و نوار ابزارها با توجه به موقعيتی که در آن قرار داريد تغيير ميکنند. به عنوان مثال وقتی در حال کار بر روی يک جدول هستيد، نوار ابزارهای مخصوص کار با جدول ظاهر ميشوند و زمانی که در حال طراحی فرم هستيد، نوار ابزارهای مخصوص فرم.
پنجره اصلی بانک اطلاعاتی
زمانیکه يک بانک اطلاعاتی را باز کنيد پنجره اصلی بانک اطلاعاتی ظاهر میشود (شکل ۲)
در اين پنجره که در ميز کار اکسس قرار دارد، قسمتهايی برای مجموعه های مختلف اشيای موجود در اکسس در نظر گرفته شده است. همانطور که در شکل ۲ ديده ميشود، برگه tables انتخاب شده است. دکمه ها و اشيای اين پنجره نيز به کاری که در حال انجامش هستيد بستگی دارند. جدول ١، اين دکمه ها و اشياء را ارائه داده است و کارهايی که انجام ميدهند را به طور خلاصه توضيح ميدهد.
شکل ۲ : ميز کار اکسس