/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
ASP i #include
Fra : Lars Klingenberg


Dato : 08-03-01 22:16

Hi,

Kan man sætte et ASP-script ind i en #include? Noget a la følgende:

<!-- #include file="../info/text/text_<%Response.Write
Request.Querystring("filnavn")%>" -->

Problemet er at jeg har et link på hver side som returnere filnavnet til en
skal-fil, hvor der så skal fyldes et indhold på med en #include.
--
Med venlig hilsen
Lars Klingenberg
[lklingenberg@ifi.ku.dk]




 
 
Jonas Astrup - html.~ (08-03-2001)
Kommentar
Fra : Jonas Astrup - html.~


Dato : 08-03-01 22:33

Lars Klingenberg wrote in dk.edb.internet.webdesign.serverside.asp:
> Kan man sætte et ASP-script ind i en #include? Noget a la følgende:

Desværre nej - men måske kan du bruge dette til noget:
http://www.activeserverpages.dk/aspdigital/kapitel3/dynamic_includes.asp

Mvh
Jonas

--
Dette indlæg er sendt fra http://www.html.dk
* Søg og læs i de danske nyhedsgrupper om webdesign
* Tutorials og artikler om webdesign på dansk

Lars Klingenberg (08-03-2001)
Kommentar
Fra : Lars Klingenberg


Dato : 08-03-01 23:36

> Desværre nej - men måske kan du bruge dette til noget:
> http://www.activeserverpages.dk/aspdigital/kapitel3/dynamic_includes.asp
Øv bøv! Metoden skitsere på URL'en er desværre ikke en option, da nogle af
de filer der skal inkluderes indeholder ASP koder.
Nå, mit alternativ er en slags "dobbelt bogholdersystem", hvor den første
side peger videre til en side, hvorpå der inkluderes en fil. Jeg håbede bare
at jeg kunne springe et led over og bruge en fælles template til alle
filerne. Surt...!
--
Med venlig hilsen
Lars Klingenberg
[lklingenberg@ifi.ku.dk]




Jakob Andersen (09-03-2001)
Kommentar
Fra : Jakob Andersen


Dato : 09-03-01 00:24

"Lars Klingenberg" <lklingenberg@ifi.ku.dk> wrote
> Kan man sætte et ASP-script ind i en #include? Noget a la følgende:
>
> <!-- #include file="../info/text/text_<%Response.Write
> Request.Querystring("filnavn")%>" -->


Nej det er ikke muligt da SSi kommandoerne udføres FØR asp og derfor vil den
jo lede efter en fil der hedder "../info/text/text_<%Response.Write
Request.Querystring("filnavn")%>" og den findes jo næppe.

En anden mulighed er at include alle filerne og så lave en if som eksekverer
koden hvis en betingelse er sand, f.eks.

if Request.Querystring("filnavn") = "noget" Then
<!-- #include file="fil1.asp" -->
Elseif Request.Querystring("filnavn") = "nogetandet" Then
<!-- #include file="fil2.asp" -->
Else
<!-- #include file="fil1.asp" -->
End if


Men det kan jo godt gå hen og blive besværligt, og det kan dog også give
nogle fejl...

Afhængig af formålet kan du måske bruge Server.Execute() eller
Server.Transfer() som er med i ASP3 se evt.
<http://www.devguru.com/Technologies/asp/quickref/server_execute.html> og
<http://www.devguru.com/Technologies/asp/quickref/server_transfer.html>

--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "
>



Lars Klingenberg (09-03-2001)
Kommentar
Fra : Lars Klingenberg


Dato : 09-03-01 08:45

> En anden mulighed er at include alle filerne og så lave en if som
eksekverer
> koden hvis en betingelse er sand, f.eks.
Det havde jeg også overvejet, men som du siger er det besværligt, og på
activeserverpage.dk står anført at man ikke kan eksekvere ASP på de sider de
bliver kaldt, og så kan det lisson være ligemeget. Desuden skulle fordelen
jo netop være at man havde en template som man ikke skulle ind o rette i men
bare kaldte "filnavn".

> Afhængig af formålet kan du måske bruge Server.Execute() eller
> Server.Transfer() som er med i ASP3 se evt.
> <http://www.devguru.com/Technologies/asp/quickref/server_execute.html> og
> <http://www.devguru.com/Technologies/asp/quickref/server_transfer.html>
Execute modellen så umiddelbart ud til at være cool, men jeg kan ikke
rigtigt få den til at virke. Det går fint nok med en absolut adresse i (),
men den vil ikke spise: <%Server.Execute(Request.Querystring("filnavn"))%>
jeg har også forsøgt med <%Server.Execute(Response.Write
Request.Querystring("filnavn")))%>, men der er ikke rigtigt noget der
virker...
--
Med venlig hilsen
Lars Klingenberg
[lklingenberg@ifi.ku.dk]



Jakob Andersen (09-03-2001)
Kommentar
Fra : Jakob Andersen


Dato : 09-03-01 09:15

Lars Klingenberg wrote in dk.edb.internet.webdesign.serverside.asp:
> Det havde jeg også overvejet, men som du siger er det besværligt, og på
> activeserverpage.dk står anført at man ikke kan eksekvere ASP på de sider de
> bliver kaldt, og så kan det lisson være ligemeget.

Man kan godt bruge ASP fra en include fil. Det skal bare omkranses af
ASP-delimiterne <% og %> altså i include filen har du:

Hej jeg hedder
<% Response.write "Jakob" %>

Og når du kalder denne fra et dokument sådan her:

<!-- include file="mininclude.asp" -->

Så vil der ganske rigtigt komme til at stå

Hej jeg hedder Jakob

> Execute modellen så umiddelbart ud til at være cool, men jeg kan ikke
> rigtigt få den til at virke. Det går fint nok med en absolut adresse i (),
> men den vil ikke spise: <%Server.Execute(Request.Querystring("filnavn"))%>

Hvordan ser den værdi der bliver sendt ud?


Vh. Jakob Andersen

--
Dette indlæg er sendt fra http://www.html.dk
* Søg og læs i de danske nyhedsgrupper om webdesign
* Tutorials og artikler om webdesign på dansk

Lars Klingenberg (09-03-2001)
Kommentar
Fra : Lars Klingenberg


Dato : 09-03-01 09:54

> > Execute modellen så umiddelbart ud til at være cool, men jeg kan ikke
> > rigtigt få den til at virke. Det går fint nok med en absolut adresse i
(),
> > men den vil ikke spise:
<%Server.Execute(Request.Querystring("filnavn"))%>
>
> Hvordan ser den værdi der bliver sendt ud?
Du mener, hvad "filnavn" indeholder? Den indeholder et simpelt filnavn, fx.
text_admi.asp (alt efter hvilken side den bliver kaldt fra).

Den bliver kaldt fra en anden side med <a
href="../info/text/skal_<%Response.Write
CurrentFile%>?filnavn=<%Response.Write CurrentFile%>">

hvor CurrentFile er defineret som:
<%
CurrentFile = LCase(Right(Request.ServerVariables("SCRIPT_NAME"),
Len(Request.ServerVariables("SCRIPT_NAME")) -
InStrRev(Request.ServerVariables("SCRIPT_NAME"), "/")))
%>


I øvrigt så er dette fejlemeddelelsen jeg får med ovenstående model:

Server object, ASP 0228 (0x80004005)
The call to Server.Execute failed while loading the page.




Lars Klingenberg (09-03-2001)
Kommentar
Fra : Lars Klingenberg


Dato : 09-03-01 10:04

En lille fejl:
> Den bliver kaldt fra en anden side med <a
> href="../info/text/skal_<%Response.Write
> CurrentFile%>?filnavn=<%Response.Write CurrentFile%>">

Ovenstående var min backup løsning, hvor der er to filer. Det skal være
nedenstående:

<a href="../includes/skal_text.asp?filnavn=<%Response.Write CurrentFile%>">




Søg
Reklame
Statistik
Spørgsmål : 177511
Tips : 31968
Nyheder : 719565
Indlæg : 6408591
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste