فهرست سرفصل‌های ASP
خانه (HOME) معرفی (WebPages Intro) ریزر (WebPages Razor) چیدمان (WebPages Layout) پوشه ها (WebPages Folders) گلوبال (WebPages Global) فرم ها (WebPages Forms) اشیا (WebPages Objects) فایل ها (WebPages Files) پایگاه داده ها (WebPages Databases) هلپرها (WebPages Helpers) وب گرید (WebPages WebGrid) نمودارها (WebPages Charts) ایمیل (WebPages Email) امنیت (WebPages Security) انتشار (WebPages Publish) نمونه ها (WebPages Examples) کلاس ها (WebPages Classes) معرفی (Razor Intro) سینتکس (Razor Syntax) متغیرها (Razor C# Variables) حلقه ها (Razor C# Loops) منطق (Razor C# Logic) متغیرها (Razor VB Variables) حلقه ها (Razor VB Loops) منطق (Razor VB Logic) معرفی (ASP Intro) سینتکس (ASP Syntax) متغیرها (ASP Variables) رویه ها (ASP Procedures) شرط ها (ASP Conditionals) حلقه ها (ASP Looping) فرم ها (ASP Forms) کوکی ها (ASP Cookies) نشست (ASP Session) برنامه (ASP Application) اینکلود (#include) (ASP #include) Global.asa (ASP Global.asa) AJAX (ASP AJAX) ایمیل (ASP e-mail) نمونه ها (ASP Examples) گواهینامه (ASP Certificate) توابع VB (ASP VB Functions) کلیدواژه های VB (ASP VB Keywords) Response (ASP Response) Request (ASP Request) Application (ASP Application) Session (ASP Session) Server (ASP Server) Error (ASP Error) FileSystem (ASP FileSystem) TextStream (ASP TextStream) Drive (ASP Drive) File (ASP File) Folder (ASP Folder) Dictionary (ASP Dictionary) AdRotator (ASP AdRotator) BrowserCap (ASP BrowserCap) پیوند محتوا (ASP Content Linking) گرداننده محتوا (ASP Content Rotator) راهنمای سریع (ASP Quick Ref) معرفی (ADO Intro) اتصال (ADO Connect) رکوردست (ADO Recordset) نمایش (ADO Display) کوئری (ADO Query) مرتب سازی (ADO Sort) افزودن (ADO Add) به روزرسانی (ADO Update) حذف (ADO Delete) فرمان (ADO Command) اتصال (ADO Connection) خطا (ADO Error) فیلد (ADO Field) پارامتر (ADO Parameter) ویژگی (ADO Property) رکورد (ADO Record) رکوردست (ADO Recordset) جریان (ADO Stream) انواع داده (ADO DataTypes)
نتیجه‌ای برای جستجو یافت نشد.
ASP

ASP — اینکلود (#include) (ASP #include)

آخرین بروزرسانی: 1404/08/14

اینکلود (#include) (ASP #include)

«اینکلود ASP» یعنی چسباندن محتوای یک فایل به فایل دیگر، قبل از اجرا. «دستور (#include)» یک دستور سروری است و متن فایل را وارد می کند، نه لینک ساده. این کار تکرارِ کد را کم می کند.

#include چیست و کِی به درد می خورد؟

با #include می توانی هدر، فوتر، یا توابع مشترک بسازی. سپس همان بخش را در چند صفحه استفاده کنی. همه این ها قبل از اجرای اسکریپت انجام می شود.

نمونه کامل استفاده در صفحه

فایل «mypage.asp» دو فایل را وارد می کند: یکی متن، یکی زمان.

<!DOCTYPE html>
<html>
<body>
<h3>Words of Wisdom:</h3>
<p><!--#include file="wisdom.inc"--></p>
<h3>The time is:</h3>
<p><!--#include file="time.inc"--></p>
</body>
</html>

مشاهده در ادیتور

محتوای wisdom.inc

این فایل فقط متن ساده دارد.

"One should never increase, beyond what is necessary,
the number of entities required to explain anything."

مشاهده در ادیتور

محتوای time.inc

این فایل زمان فعلی را چاپ می کند.

<%
Response.Write(Time)
%>

مشاهده در ادیتور

سینتکس دستور #include

دستور باید داخل کامنت HTML باشد. دو حالت «virtual» و «file» داریم.

<!--#include virtual="somefilename"-->

or

<!--#include file="somefilename"-->

مشاهده در ادیتور

کلیدواژه virtual

«virtual» یعنی مسیر از ریشه پوشه مجازی شروع می شود.

<!--#include virtual="/html/header.inc" -->

مشاهده در ادیتور

کلیدواژه file

«file» یعنی مسیر نسبی از کنار فایلِ شامل کننده شروع می شود.

<!--#include file="headers\header.inc" -->

مشاهده در ادیتور

هشدار: اگر فایل در مسیر دیگری باشد، مسیر نسبی کار نمی کند.

رفتار در خروجی مرورگر

مرورگر فقط خروجی نهایی را می بیند. محتوای فایل های include جایگزین می شود.

<!DOCTYPE html>
<html>
<body>
<h3>Words of Wisdom:</h3>
<p>"One should never increase, beyond what is necessary,
the number of entities required to explain anything."</p>
<h3>The time is:</h3>
<p>11:33:42 AM</p>
</body>
</html>

مشاهده در ادیتور

نکات امنیتی و محدودیت ها

فایل های «.inc» در صورت دسترسی مستقیم نمایش می شوند. اگر محرمانه اند، از پسوند «.asp» استفاده کن.

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

<%
fname = "header.inc"
%>
<!--#include file="<%fname%>"-->

مشاهده در ادیتور

هشدار: در فایل INC نمی توانی جداکننده اسکریپت را باز یا بسته کنی.

<%
For i = 1 To n
  <!--#include file="count.inc"-->
Next
%>

مشاهده در ادیتور

اما وقتی بلوک ها جدا باشند، کار می کند.

<% For i = 1 To n %>
<!--#include file="count.inc" -->
<% Next %>

مشاهده در ادیتور

گام های عملی سریع

  1. یک «header.asp» بساز و منو را داخلش بگذار.
  2. در صفحات سایت، با «file» آن را وارد کن.
  3. برای مسیرهای سراسری، از «virtual» استفاده کن.

جمع بندی سریع

  • #include متن را قبل از اجرا می چسباند.
  • «file» نسبی است؛ «virtual» ریشه ای است.
  • .inc محرمانه نیست؛ برای امنیت از .asp استفاده کن.
  • نام پویا برای include کار نمی کند.