Avatar billede phineas_phreak Nybegynder
03. maj 2002 - 16:24 Der er 9 kommentarer og
3 løsninger

hente ASP fra db og execute ... hvordan gør jeg ?

Hej derude... jeg står med et problem jeg ik helt kan overskue. Jeg har en HP liggende med et "besværligt"  design. Siden består som så mange andre HP's af en laang række forskellige sites indeholdende ASP. For at undgå at skulle opdatere hver enkelt af siderne hver gang jeg ændrer noget, har jeg valgt at fyre tekstindholdet ind i en access database så sidens udseende forbliver den samme. jeg henter så hele det  html output der svarer til den side jeg ønsker vist ud i en celle på forsiden og det går også fint.

Men ... Alt hvad der hedder ASP som jeg henter ud fra databasen bliver selvfølgelig ikke executed. Det bliver bare smidt ud på siden som kildekode. Det hjælper heller ik at referere til en .inc fil fra databasen.

Hvordan jeg løser dette problem ...
Har i forstået hvad jeg spørger om ? :D

jeg har altså en side: sitesystem.asp med et output tag <%=rs("tekst")%>.

Ved reference til id 25 i databasen skriver jeg naturligvis sitesystem.asp http://www.happyjazz.net/sitesystem.asp?id=25

Er jeg helt gal på den eller hvad ? :D S.U. snarest
Avatar billede repsac Nybegynder
03. maj 2002 - 16:26 #1
hvorfor bruger du ikke SSI i stedet for at snuppe det fra en db?

asp-kode
%>
<!-- #include file="dinfil.asp" -->
Avatar billede phineas_phreak Nybegynder
03. maj 2002 - 16:28 #2
eksempel på problemet ses på http://www.happyjazz.net/sitesystem.asp?id=29
som jo er en ganske almindelig tagwall, og burde virke fint
Avatar billede md_craig Nybegynder
03. maj 2002 - 16:29 #3
Du vil aldrig kunne gøre det du vil, du bliver nød til at bruge almindelig Include som rapsac har vist dig...

du skal tænke på at din ASP exekveres og så er det ellers slut...
Avatar billede phineas_phreak Nybegynder
03. maj 2002 - 16:32 #4
tror ik helt jeg er med repsac :) ... har aldrig sagt jeg var god til det her :D
men hvor havde du tænkt at at det include tag skulle stå ?
Avatar billede Slettet bruger
03. maj 2002 - 16:41 #5
Det repsac mener tror jeg er at du skal lave din skabbelon til siden, og så skal du bruge:
<!-- #include file="dinfil.asp" -->
til at hente hvordan siden skal se ud dette ken du finde en tutorial til på www.html.dk
Avatar billede phineas_phreak Nybegynder
03. maj 2002 - 16:55 #6
Det du henviser til questis og repsac også for den sags skyld, har jeg jo allerede anvendt massere af. Se link :D både afstemningsformen og "antal personer online" er jo lavet med SSI.

Problemet er at jeg ikke skal ha udskrevet det samme på hver side. Når jeg henter noget tekst ind til f.eks. en tagwall skal jeg også foretage en rutine der connecter til databasen og udskriver poster. Dette kan jo let gøres med SSI. Men hvordan gør jeg det når siden er dynamisk ? Jeg skal include forskellige filer afhængig af teksten vist i midten.

Hvis i forstår ? svært at forklare :D
Avatar billede eagleeye Praktikant
03. maj 2002 - 17:14 #7
Prøv evt men    Execute (rs("kolonne med kode"))

Denne skriver HEJ i browseren:
execute("response.write ""HEJ""")
Avatar billede eagleeye Praktikant
03. maj 2002 - 17:19 #8
Eller tag et kik på denne artikel:
http://www.4guysfromrolla.com/webtech/042602-1.shtml

Hvis man nu læser fra databasen og skriver det til en tekst fil og så laver en include af den tekst fil :)
Avatar billede repsac Nybegynder
03. maj 2002 - 17:44 #9
kan man ikke lave noget i stil med dette?
<!-- #include file="<% response.write "request.querystring("action")" %>" -->
- nu er jeg php-mand, og det er lynende nemt i php, så mon ikke det også kan lade sig gøre at lave bare _lidt_ smart i asp? ;)
Avatar billede md_craig Nybegynder
03. maj 2002 - 19:27 #10
jo... men det er næmere at:

<%
action = request.querystring("action")

If Action = "" then
  Action = "side1"
end if

If Action = "side1" then
%>
<!--#include file="side1.asp"-->
<%
end if
if action = "side2" then
%>
<!--#include file="side2.asp"-->
<%
end if
%>
Avatar billede eagleeye Praktikant
03. maj 2002 - 23:25 #11
Hvis du har skrive rettigheder til en text fil kan du prøve sådan noget her. Det er nok ikke en pæn løsning men det virker:

<%

'Åben connection til din databse
'Lav SQL som hendter fra den tabel/kolonne koden er i.
strSQL = "SELECT * FROM designTabel"
set rs = conn.Execute (strSQL)
Set oFSO = Server.CreateObject("Scripting.FileSystemObject")
'Åben en include fil test.asp
Set iFile = oFSO.CreateTextFile(Server.MapPath("test.asp"),true)
'Skriv kolonne indholdet til filen
iFile.Write rs("designTing")
'luk filen
iFile.close
Set oFSO = Nothing
Conn.Close
%>
<HTML>
<body>
<!-- Inkluder filer her -->
<!-- #include file="test.asp" -->
</body>
</HTML>
Avatar billede phineas_phreak Nybegynder
11. maj 2002 - 13:42 #12
Jeg fandt selv en løsning med noget SSI ... dog var det meget besværligt :D, men tak for forslagene.
Til eagleeye: dit forslag Execute (rs("kolonne med kode"))
kunne jeg ik helt få til at virke, men kan godt se ideen i det. Kan man lave noget lignende ? eller er det mig der ik fatter en krone ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester