09. september 2005 - 23:23Der er
36 kommentarer og 1 løsning
Relativ sti i include
Er det muligt at lave en relative sti fra roden i en #include
Dvs. i stedet for at skrive <!-- #include file="../../conn.asp" --> eller lign. kunne lave en relativ sti fra roden på samme måde som man kan Server.MapPath("/conn.asp")
Jeg har en fil der hedder conn.asp liggende direkte i wwwroot og vil gerne include denne på alle mine sider uanset hvilken mappe jeg er i og uden at skulle kopierer den til hver mappe.
Jeg kan ikke få det til at virke. Hvor kommer den virtuelle mappe ind her?
At jeg gerne vil have nem adgang til denne fil (conn.asp) fra alle mine filer med den samme kode. ex. <!-- #include file=/conn.asp -->
Det andet er, hvor du mener jeg bruger virtuelle mapper, da du skrev at jeg skulle kigge på virtual. Er ikke lige helt skarp i hvad der menes med virtuel mappe.
Håber det var lidt mere forståeligt, det er jo tidligt om morgenen (og så på en lørdag);)
kan desværre ikke vise noget da det kører lokalt. Den ligger direkte i wwwroot sammen med min default.asp. Det virker fint på forsiden, men når jeg linker til en fil i en mappe der ligger i news/default.asp. Denne virker også hvis jeg ændre koden til <!-- #include file="../conn.asp" -->
Men det er det jeg gerne vil undgå at skulle gøre i alle mapper/filer da jeg vil ha mulighed for at ændre for alle filer i én fil.
Og det kan du sagtens undgå. Det virker selvfølgelig som beskrevet ovenfor, og i linket i toppen, så hvordan bruger du "virtual", så du ikke kan få det til at virke?
Det var ikke til at se i 10/09-2005 08:36:14 hvad du skrev i koden. Så prøv lige at opsummere, og teste: Hvad skriver du, hvor ligger filerne, og hvad sker der.
I roden ligger (er opsat i iis til at pege på en mappe med navnet web - dvs web er roden): - conn.asp - default.asp : <!-- #include file="conn.asp" --> ***Virker***
Det har jo nok noget med "opsat i iis til at pege på en mappe med navnet web" at gøre. Hvad skriver du i adresse linien for at filerne default.asp og news/default.asp ?
Og når du siger "lokalt", så kører du på en arbejdsstationsudgave af Windows, fx XP Home eller XP Pro, og ikke på en serverudgave, fx 2003 ??? Generelt skal man ikke regne med at de "sjove" ting virker på legetøjsudgaverne af IIS.
Om det så lige er legetøjsudgaven af IIS der gør det, skal jeg ikke kunne sige her og nu, men virtual="/conn.asp" leder efter filen i wwwroot og ikke i wwwroot/web. Der sker altså ikke det forventede når du laver en virtuel mappe, som det vist hedder i IIS-sprog.
sorry... Det var MIG der havde misforstået det.. Det virker sørme nu... :)
Men nu har jeg et andet problem hvor det lige bliver smækket 20 point mere i til den der kan hjælpe med det.
Nu får jeg fat i conn.asp, men når jeg kører /news/default.asp leder den efter databasen i \news\db\db.mdb. db'en ligger i \db\db.mdb. Dvs. et niveau højere end news.
Vil du ikke nok.. Jeg kan da ikke bare lade det stå hen uden at give en eller anden form for belønning... Det vil jeg slet ikke have det godt med. Jeg er VILDT glad for den hjælp (og tålmodighed når jeg ikke læser rigtigt hvad du skriver).
Ekspertens point er rent til grin. Jeg har ikke fået nogle siden 2003, vistnok. Hvis ikke andre deltagere skal have, kan du svare selv, og acceptere eget svar,
ok, men endnu en mange tak for hjælpen. Du er en meget venlig person.
Synes godt om
Ny brugerNybegynder
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.