webForumDet fria alternativet

include virtual

ASP

20 svar · 1 271 visningar · startad av daniel_ra

Medlem sedan jan. 2002381 inlägg
Frågan#1

jag har alltid kunnat göra såhär:

<!--#include virtual="/connection.asp" -->

men nu hittar den inte filen connection.asp. jag har lagt över mina sidor i en ny dator men vad skall det spela för roll?

vad kan jag göra åt saken?

Medlem sedan juni 20019 519 inlägg
#2

prova med file istället för virtual.

Medlem sedan jan. 2002381 inlägg
#3

men av någon anledning minns jag att det inte fungerade att använda file typ ../../../connection.asp på webbhotellet, därför har jag virtual på alla mina sidor utom på de sidor som ligger i samma katalog som filen connection.asp.. det måste ju finnas en anledning till att det inte fungerar med virtual nu men att det gör det på min andra dator. vad kan skillnaden vara?

Medlem sedan aug. 20002 272 inlägg
#4

Vissa webhotell tillåter inte include file p.g.a säkerhetsskäl.
Ligger connection.asp rakt i rooten på servern?

Medlem sedan jan. 2002381 inlägg
#5

på webbhotellet ligger den i rooten och include virtual fungerar fint och har alltid gjort, det är på min egen maskin som det nu helt plötsligt inte fungerar. är det någon inställning jag kan göra för att tillåta detta. Det har ju gått bra tills jag bytte burk så det måste vara någonting hos mig som jag kan ändra på så att det funkar igen.

Medlem sedan juni 20019 519 inlägg
#6

Kolla i din IIS på din maskin hemma.

Medlem sedan jan. 2002381 inlägg
#7

hittar inga skillnader i inställningar =(

Medlem sedan juni 2002256 inlägg
#8

daniel_ra skrev:

på webbhotellet ligger den i rooten och include virtual fungerar fint och har alltid gjort, det är på min egen maskin som det nu helt plötsligt inte fungerar. är det någon inställning jag kan göra för att tillåta detta. Det har ju gått bra tills jag bytte burk så det måste vara någonting hos mig som jag kan ändra på så att det funkar igen.

Åter igen; ligger connection.asp i rooten på din dator?

Medlem sedan jan. 2002381 inlägg
#9

nej den ligger inte i rooten.

Medlem sedan nov. 20014 054 inlägg
#10

Om den nu inte ligger i roten så funkar inte detta

<!--#include virtual="/connection.asp"-->

För / hänvisar till roten, /katalog/fil.asp hänvisar till filen fil.asp i katalogen katalog i roten. Så se över var filerna ligger. :)

Medlem sedan jan. 2002381 inlägg
#11

mitt problem är att filstrukturen alltid varit densamma och att jag alltid kunnat använda <!--#include virtual="/connection.asp" -->

såhär ser filstrukturen ut: wwwroot/mapp1/mapp2/fil1.asp

connection.asp ligger i mapp1 och jag har alltså alltid kunnat komma åt denna från fil1.asp med koden ovan. jag vill kunna göra det igen så att jag slipper ändra sökvägen i alla mina filer.

Medlem sedan juli 200659 inlägg
#12

Testa med:
<!--#include file="connection.asp" -->

Medlem sedan juli 20011 129 inlägg
#13

daniel_ra skrev:

mitt problem är att filstrukturen alltid varit densamma och att jag alltid kunnat använda <!--#include virtual="/connection.asp" -->

såhär ser filstrukturen ut: wwwroot/mapp1/mapp2/fil1.asp

connection.asp ligger i mapp1 och jag har alltså alltid kunnat komma åt denna från fil1.asp med koden ovan. jag vill kunna göra det igen så att jag slipper ändra sökvägen i alla mina filer.

Enligt min erfarenhet så måste det innebära att mapp1 var definierad som webroot i webservern. Antingen då eller så är det något form av svart magi :P

Medlem sedan jan. 2002381 inlägg
#14

fick aldrig nåt riktigt svar på detta, jag har nu lagt connection.asp i rooten på min dator och då hittar sidorna filen med <!--#include virtual="/connection.asp" --> men då får jag fel på connectionsträngen istället som även den fungerat fint.. det är inte lätt det här =(

strConn = "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & Server.Mappath("mindb.mdb") & ";"
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open (strConn)

får detta fel

---------------------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x12b4 Thread 0x17cc DBC 0x10dd5f4 Jet'.
---------------------------------

Medlem sedan jan. 2002381 inlägg
#15

okay, har testat vidare.. nu visar det sig att saker är ännu skummare. Om includefilen med connection ligger i samma katalog som filen jag anropar connection.asp med så fungerar databasanropet. om jag däremot includerar connection.asp från en sida som inte ligger i samma mapp som connection.asp så fungerar inte databasanropet trots att det är samma fil som inkluderas. Detta borde ju vara totalt omöjligt och inte ha någonting med varandra att göra, eller??

Medlem sedan juli 2003465 inlägg
#16

Har för mig att man får utgå ifrån filen som man inkluderar i när man kör "include virtual".
Testa att skriva typ server.MapPath("/db/mindb.mdb").

Medlem sedan jan. 2002381 inlägg
#17

jag provade det men jag har fortfarande problemet att beroende på var filerna ligger så fungerar det alternativt fungerar inte. Jag provade att skriva ut hela sökvägen till databasen och det fungerar sålänge som filerna ligger i samma katalog som connection.asp. ligger filderna däremot i en mapp längre ned i hierarkin så går det inte att använda hela sökvägen utan får felet om registry key. Hur kommer detta sig?

använder jag mappath så är det som du säger, den utgår från den mapp som filen ligger i vilket ju kan vara olika från fall till fall så det kan jag ju inte använda alls.

Medlem sedan nov. 20014 054 inlägg
#18

/red

fel språk ... haha..

Medlem sedan sep. 2000667 inlägg
#19

Har du testat "Enable parent path" i IIS?

Medlem sedan juli 2003465 inlägg
#20

När jag hade strul med det så gjorde jag en path sträng som angav vart man var med den filen som man inkluderade ifrån och sedan använde man den strängen i connection.asp för att den skulle hitta rätt. Testa det.

309 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
131 ms — deklarationer (db)
0 ms — hämta statistik (cache)
174 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)