RicH and FamouS

       Home         Glosar IT                                                                                                                                                                                                              SUBSCRIBE NOW!
        

06.04.2009

Includeri de fisiere ASP

In codul paginilor ASP se pot include fisiere externe cu cod ASP sau de alta natura. Asta ajuta la organizarea mai bine a codului, pastrind lucruri comune intr-un fisier ce poate fi inclus in multe alte fisiere.

Aceasta se realizeaza simplu cu directiva #include:

<!--#include file="fisier1.asp"-->
<!--#include virtual="fisier2.asp"-->

Se vad deja 2 diferente: se foloseste file sau virtual? In principiu fac aceleasi lucruri, difera doar felul cum e specificat fisierul de inclus: fisierul e specificat absolut sau relativ fata de sistemul de fisiere sau e vorba de cai virtuale, relativ la radacina site-ului?

De exemplu:

<!--#include file="..director1fisier1.asp"-->
<!--#include virtual="/director2/fisier2.asp"-->

Primul exemplu include un fisier din directorul "director1" din parintele directorului curent, relativ la caile fisierelor de pe hard-disc.
In al 2-lea exemplu e vorbe de director2 aflat in radacina serverului web.

Sa prezentam un exemplu concret de includere:

In fisier.asp avem:

<html>
<body>
Fisier inclus:
<!--#include file="fisier_inc.asp"-->
</body>
</html>

In fisier_inc.asp avem:
<%
Response.Write "Exemplu inclus"
%>

Citeva explicatii se impun. Includerea este de fapt o inlocuire fizica a continutului in pagina originala, inainte de compilarea paginii de catre ASP. Asta inseamna ca nu se pot folosi variabile. De exemplu nu va functiona:

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

Pentru a include un fisier in mijlocul unui cod ASP se scrie asa:

<% If x=1 Then %>
<!--#include file="count.inc" -->
<% End If%>

Nu va functiona:

<% If x=1 Then
<!--#include file="count.inc" -->
End If%>

Trebuie avut grija sa nu se includa recursiv un fisier in altul (erorare ce duce la blocarea paginilor):

In fisier1.asp:
<!--#include file="fisier2.asp"-->

In fisier2.asp:
<!--#include file="fisier1.asp"-->

Pe de alta parte, extensia fisierelor de inclus nu sint importante. Poate fi *.asp sau *.inc sau orice altceva. Sa aveti grija doar ca aceasta extensie sa nu fie accesibila direct prin browser, iar codul ASP sa fie afisat in clar (inclusiv cu date sensibile: parole, cod sensibile, etc.).

ASP nu are un echivalent al include_once() din PHP.

    Blog din Moldova    FastCounter 

 
Copyright © 2008-2010 Foster1. All rights reserved.