Toon posts:

[asp] Probleem met Include

Pagina: 1
Acties:

Verwijderd

Topicstarter
Wie weet er een oplossing voor het volgende probleem. Ik heb een maakpagina.asp gemaakt en die zorgt dat ik met dit asp-tje alle pagina's binnen ons intranet op kan vragen. Ik laat de code van de gevraagde URL met onderstaande code:
code:
1
2
3
4
5
6
7
8
9
10
SUB ReadDisplayFile(FileToRead)
   TEKST=server.mappath(FileToRead)
   Set fs = CreateObject("Scripting.FileSystemObject")
   Set thisfile = fs.OpenTextFile(TEKST, 1, False)
   tempSTR=thisfile.readall
   response.write tempSTR
   thisfile.Close
   set thisfile=nothing
   set fs=nothing
END SUB

Binnen mijn ASP roep ik de SUB aan met:
code:
1
Call ReadDisplayFile(TEKST)

Aan de waarde TEKST geef ik de url v.d. pagina mee.

Maar als de url bijvoorbeeld test.asp is, en ik heb in die asppagina een include tag met enkele code's erin verwerkt, dan voert hij die code's niet uit, maar stuurd ze naar de browser toe! Dus als ik ergens een <%=Variabele%> neerzet, dan zet hij dit "letterlijk" neer i.p.v. de waarde in DIE variabele neer te zetten. Kan ik bovenstaande code aanpassen zodat hij EERST de code uitvoert op de server en dat hij het DAN PAS naar de browser stuurt.

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Duh, de naam zegt het al READ niet uitvoeren, kan trouwens ook al helemaal niet of je moet met dingen als server.transfer gaan werken, waarom wil je dit trouwens gaan doen?

Verwijderd

Topicstarter
Op donderdag 07 februari 2002 10:04 schreef raptorix het volgende:
Duh, de naam zegt het al READ niet uitvoeren, kan trouwens ook al helemaal niet of je moet met dingen als server.transfer gaan werken, waarom wil je dit trouwens gaan doen?
Het is dus de bedoeling dat ik ALLEEN met maakpagina.asp?pagina=xxxxxx een pagina opvraagt. Ik heb alle pagina's die in ASP zijn gemaakt in een aparte map op de server gezet (/asp). Dus als mensen de pagina: maakpagina.asp?pagina=main dan is het de bedoeling dat het asp script de standaard layout gebruikt, en de tekst die in main.asp staat ook in die standaard layout zet. De layout heb ik verwerkt in de maakpagina.asp. Maar het script werkt perfect, hij geeft altijd de standaard layout met de tekst uit de asp file, maar hij voert de code niet uit die ik erin typt!.

Dus hoe moet EERST de code op de SERVER uitvoeren, en alle outputs naar de browser sturen!

Ik hoop dat het zo duidelijker is :9

  • Nazgul
  • Registratie: Februari 2000
  • Laatst online: 11-10-2022

Nazgul

Digital Pizza Crew

Welke versie ASP gebruik je? (Oftewel welke versie IIS/PWS)

Vanaf ASP 3.0 kun je dat oplossen met een Server.Execute
In vorige versies is het niet echt haalbaar.

[Edit: stom tikfoutje]

No trees were killed in the sending of this message. However a large number of electrons were terribly inconvenienced.


  • xtra
  • Registratie: November 2001
  • Laatst online: 31-08 14:51
Heb je in maakpagina.asp de code ook tussen <% ... %> staan?

Verwijderd

Topicstarter
Op donderdag 07 februari 2002 10:32 schreef Nazgul het volgende:
Welke versie ASP gebruik je? (Oftewel welke versie IIS/PWS)

Vanaf ASP 3.0 kun je dat oplossen met een Response.Execute
In vorige versies is het niet echt haalbaar.
Wij werken inmiddels met 4.0, dus ik ga het ff proberen!

Verwijderd

Topicstarter
Op donderdag 07 februari 2002 10:33 schreef jouwmobiel het volgende:

[..]

Wij werken inmiddels met 4.0, dus ik ga het ff proberen!
Ik heb het geprobeert, maar krijg het volgende:
code:
1
2
3
4
5
Runtimefout Microsoft VBScript error '800a01b6' 

Deze eigenschap of methode wordt niet ondersteund door dit object: 'Response.Execute' 

/maakpagina2.asp, line 377

Ik heb 'Response.Execute TEKST' gebruikt, of moet ik hem anders aanroepen!

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Dit neigt naar slechte code.

Verwijderd

Topicstarter
Ik heb op internet ook rond zitten neuzen maar ik kan er niets over vinden! Wie kan me ff uitleggen hoe ik dit moet aanpakken!

  • Nazgul
  • Registratie: Februari 2000
  • Laatst online: 11-10-2022

Nazgul

Digital Pizza Crew

Op donderdag 07 februari 2002 10:33 schreef jouwmobiel het volgende:

[..]

Wij werken inmiddels met 4.0, dus ik ga het ff proberen!
IIS 4.0 = ASP 2.0
IIS 5.x = ASP 3.0
IIS 6.0 = ASP.NET

No trees were killed in the sending of this message. However a large number of electrons were terribly inconvenienced.


  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Maar waarom zou je dit in godsnaam willen? Mijn ervaring is dat het gewoon niet slim is om vanuit 1 centrale asp file alles aan te roepen, met name qua performance is het niet goed, maar ook qua debugging geeft het veel gezeik. Kortom wat is je motivatie om het op deze manier te doen?

Verwijderd

Topicstarter
Helaas, we hebben IIS4.0, dus geen ASP3.0 of hoger! Maar ik wou dit doen i.v.m. beveiliging, misschien een beetje gek, maar ik heb een idee om iets extra te beveiligen, waardoor er straks alleen pagina's op kunnen worden gevraagt met bijv:

pagina.asp?id=690cPUUDaT0202078a0QKtYD1033nE23570

Wat de kloe erachter is vertel ik nog niet, dan moet het eerst werken! Dus daarom wil ik graag jullie medewerking hebben, zodat straks iedereen zijn pagina zo kan beveiligen.

Maar is er dan voor mij geen code beschikbaar die dit TOCH aankan, want verlopig zien ze het hier nog niet zitten om over te gaan naar IIS5.0 of hoger!

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
ALs je in plaats van zo omslachtig te doen nou gewoon de content in een database zet en een fatsoenlijk usersysteem maakt scheelt dat een hoop gelul, daarnaast is het beveiligen van content op deze manier niet echt slim omdat je beveiliging nu gebaseerd is op het filesystem.

Daarnaast raad ik je zeer sterk aan IIS 5 te gebruiken, al was het alleen maar omdat in IIS 4 geen classes of reguliere expressies gebruikt kunnen worden.

  • Nazgul
  • Registratie: Februari 2000
  • Laatst online: 11-10-2022

Nazgul

Digital Pizza Crew

No trees were killed in the sending of this message. However a large number of electrons were terribly inconvenienced.


  • KoeKk
  • Registratie: September 2000
  • Laatst online: 14-09 19:20
Als je nu een pagina met 2 frames maakt, 1 een hidden daarin hang je die maakpagina.asp, dan kan je in javascript of ASP de querystring opvragen en hem dan redirecten naar het andere frame... Dit is niet precies de manier die je bedoelt maar het is o.a. een oplossing

raptorix: regexp's kunnen wel op iis4 gebruikt worden, dan hangt namenlijk van de scriptengine af, die kan je gewoon updaten mij MS: msdn scripting downloads

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 14-09 19:20
qouto i.p.v edit |:(

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Op donderdag 07 februari 2002 12:03 schreef KoeKk het volgende:
Als je nu een pagina met 2 frames maakt, 1 een hidden daarin hang je die maakpagina.asp, dan kan je in javascript of ASP de querystring opvragen en hem dan redirecten naar het andere frame... Dit is niet precies de manier die je bedoelt maar het is o.a. een oplossing

raptorix: regexp's kunnen wel op iis4 gebruikt worden, dan hangt namenlijk van de scriptengine af, die kan je gewoon updaten mij MS: msdn scripting downloads
Ja dat weet ik maar als je dan toch gaat upgraden gooi dan lekker de boel naar IIS 5, ik bedoelde dat de scriptinghosts op IIS 4 geen regexpen ondersteunen.

Maar terugkomend op het probleem, ik krijg het idee dat topicstarter ontzettend omslachtig bezig is om iets heel simpels voor elkaar te krijgen, zie dat hij nu via filesystem bestanden gaat inlezen en die dan weer wil gaan parsen en dat omwille security :?

Ik heb een hoop bizarre dingen gezien maar dit slaat zo een beetje alles.

  • Battle Bunny
  • Registratie: Oktober 2001
  • Laatst online: 02-02 21:41
Ja dat weet ik maar als je dan toch gaat upgraden gooi dan lekker de boel naar IIS 5, ik bedoelde dat de scriptinghosts op IIS 4 geen regexpen ondersteunen.
Da's nog eens een handig idee, "eventjes" de servers van NT4 naar W2K/XP gooien... Gosh |:(

Verwijderd

Topicstarter
Op donderdag 07 februari 2002 12:30 schreef Battle_Bunny het volgende:

[..]

Da's nog eens een handig idee, "eventjes" de servers van NT4 naar W2K/XP gooien... Gosh |:(
Dat heb ik ook al voorgesteld, maar ons bedrijf (15.000 medewerkers) draaid nog volledig op NT4 maar zijn al een aantal weken bezig met het voorbereiden om naar 2000 over te stappen. En nu hangen ze liever nog geen win2000 servers in het netwerk, omdat ze nog niet precies weten hoe hij zich gaat gedragen.

Het gaat trouwens alleen maar om het intranet!

Maar ik ga maar eens wat anders verzinnen, want erg wijs wordt ik hier niet ;(

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Volgens mij kan je met SP6 upgraden naar IIS 5 voor NT 4

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Misschien dat het handig is als je gewoon eerst de case voor te leggen, krijg nameiljk het idee dat je niet helemaal het idee achter asp begrijpt.

Verwijderd

Topicstarter
Op donderdag 07 februari 2002 14:00 schreef raptorix het volgende:
Misschien dat het handig is als je gewoon eerst de case voor te leggen, krijg nameiljk het idee dat je niet helemaal het idee achter asp begrijpt.
Ik ben gewoon een beetje aan het rommellen met ASP, dus zo veel mogelijk dingen maken, en nog zorgen dat het werkt ook :)

Maar ik ben nu bezig met enkele DOS-applicaties over te zetten naar html-database gestuurde proggy's, lukt vrij goed, maar je moet wel alles kunnen. En aangezien dat ik vorige maand eens met ASP ben begonnen, vind ik dat ik al aardig wat kan, zonder maar ook een cursus te volgen.

Ik zal het ff na laten vragen of SP6 goed is, zoja, gaan we die er ZEKER overeen gooien :D

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Je kan beter de html gewoon in een databaseje zetten, en die er via selects uit halen, maakte het stukken makkelijker qua beveiliging en opslag, daarnaast is het qua performance ook nog stuk beter, probeer dat filesystemobject niet te veel te gebruiken, zeker niet voor zaken die je nu doet.

Verwijderd

Topicstarter
Op donderdag 07 februari 2002 14:47 schreef raptorix het volgende:
Je kan beter de html gewoon in een databaseje zetten, en die er via selects uit halen, maakte het stukken makkelijker qua beveiliging en opslag, daarnaast is het qua performance ook nog stuk beter, probeer dat filesystemobject niet te veel te gebruiken, zeker niet voor zaken die je nu doet.
Ok dan, ze zijn nu Service Pack 6 aan het installeren, ff kijken wat hij daarna doet. Maar ik was het al langer van plan om het in een database te gooien, maar ik nu ff andere ideeen aan m'n kop!

Verwijderd

Topicstarter
Helaas heeft SP6 geen wonderen gedaan, nog steeds IIS4.0 ;(

Misschien hebben we ergens nog een option pack liggen :?

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Sorry dacht dat ie dan IIS5 was, uhm kan je niet lokaal win2k installeren zodat je wel alvast kan ontwikkelen op 5?

  • Sircuri
  • Registratie: Oktober 2001
  • Niet online

Sircuri

Volledig Appelig

De ASP Scripting engine parsed de ingelezen bestanden niet. De asp engine heeft in principe ook geen enkele reden om ingelezen tekst te verwerken via de ASP engine.
Een include van die pagina gaat ook niet , want ASP beschikt niet over dynamisch includen.

Dus wat jij wil kan niet. Wil je het persee zo doen dan moet je overgaan naar PHP. Of zoals iemand anders al zei; gooi alle info in een database en haal ze er runtime uit.
Alleen op die manier voorkom je dat de echte URL naar het HTML bestand zichtbaar is voor de eindgebruiker (althans, ik neem aan dat dit je motivatie is om het zo te willen doen >:) )

Signature van nature


  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Asp kan wel dynamisch includen alleen doe je dat via Server.Transfer

  • Nazgul
  • Registratie: Februari 2000
  • Laatst online: 11-10-2022

Nazgul

Digital Pizza Crew

Server.Transfer is ook ASP 3.0.

En je kunt dan beter kiezen voor Server.Execute.
Transfer geeft de complete controle over aan het geinclude bestandje en komt na afloop ook niet terug. Execute doet dat wel.

No trees were killed in the sending of this message. However a large number of electrons were terribly inconvenienced.


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 04-09 12:53
Op donderdag 07 februari 2002 11:32 schreef raptorix het volgende:
.... gewoon de content in een database zet en een fatsoenlijk usersysteem maakt scheelt dat een hoop gelul, daarnaast is het beveiligen van content op deze manier niet echt slim omdat je beveiliging nu gebaseerd is op het filesystem. ...
(Polderdijk = jouwmobiel = TopicStarter)

Ik ben nu thuis, maar nu probeerde ik voor thuis de html in een acces 97 database te laden, maar nu ben ik er achter gekomen dat ik max. 255 tekens in een veld mag zetten. Hoe los ik dit probleem op?

Hier heb ik trouwens wel IIS5 :D

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 04-09 12:53
Op donderdag 07 februari 2002 18:38 schreef Polderdijk het volgende:

[..]

(Polderdijk = jouwmobiel = TopicStarter)

Ik ben nu thuis, maar nu probeerde ik voor thuis de html in een acces 97 database te laden, maar nu ben ik er achter gekomen dat ik max. 255 tekens in een veld mag zetten. Hoe los ik dit probleem op?

Hier heb ik trouwens wel IIS5 :D
Sorry, antwoord zelf al gevonden :+ F1 Doet wonderen :o

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!

Pagina: 1