|
| Link fra asp side til databse på webserver Fra : Brian Trantow |
Dato : 31-10-07 14:40 |
|
Hej Alle,
Jeg sidder med et lille problem, som jeg håber en af jer kan
hjælpe med.
Jeg har en access databse som ligger i min webservers database
folder. Tilsvarende har jeg en asp fil, som skal slå data op i
databasen. Denne asp fil ligger i en anden folder på webserveren
som hedder www/asp/.
Får at slå op i databasen skal jeg skrive en sti til databasen i
min asp fil.
Mit sørgsmål er: Hvordan skriver jeg en sti, hvor jeg "går op" i
mappehierekiet, altså går ud af de to mapper min asp fil ligger i
og ind i den mappe hvor databasefilen ligger.
Håber i forstår og at I kan svare mig.
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (31-10-2007)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 31-10-07 16:21 |
|
Brian Trantow skrev:
> Mit sørgsmål er: Hvordan skriver jeg en sti, hvor jeg "går op" i
> mappehierekiet,
".." = et niveau op
Fx:
Server.mappath("../../db/dindb.mdb")
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
Jørn Andersen (31-10-2007)
| Kommentar Fra : Jørn Andersen |
Dato : 31-10-07 17:29 |
|
On Wed, 31 Oct 2007 16:20:50 +0100, "Jens Gyldenkærne Clausen"
<jens@gyros.invalid> wrote:
>> Mit sørgsmål er: Hvordan skriver jeg en sti, hvor jeg "går op" i
>> mappehierekiet,
>
>".." = et niveau op
>
>Fx:
>Server.mappath("../../db/dindb.mdb")
Det kan godt være jeg husker forkert, men jeg mener at have set nogen
beklage sig over, at deres servere ikke tillader, at de virtuelle stier
går længere op/ned end til roden.
Det kan være et problem, hvis "../../db/dindb.mdb" ligger uden for
webscope, da det så ikke er en reel virtuel sti.
Ovenstående vil så give:
rodsti\db\dindb.mdb
- uanset hvor mange "../" man sætter foran.
Hvis det er et problem, kan man formentlig komme ud over det ved at tage
udgangspunkt i en fungerende virtuel sti - fx "/mindb.mdb"
strMapPath = Server.Mappath("/mindb.mdb")
og så brug en replace:
strMapPath = Replace(strMapPath, "\db\", "\www\")
- hvor "www" er servermappen for web'et, mens "db" er servermappen for
databasen.
Mvh. Jørn
--
Jørn Andersen,
Brønshøj
| |
Jens Gyldenkærne Cla~ (31-10-2007)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 31-10-07 17:56 |
|
Jørn Andersen skrev:
> Det kan godt være jeg husker forkert, men jeg mener at have
> set nogen beklage sig over, at deres servere ikke tillader, at
> de virtuelle stier går længere op/ned end til roden.
Nej - du husker fint. En virtuel sti kan kun gå til roden.
Der er desuden en endnu mere aktuel problemstilling - nemlig det at
brugen af ".." på en IIS6 som standard ikke er tilladt. Det betyder
at ethvert (asp)kald til ".." vil give en fejl.
Se mere på < http://support.microsoft.com/kb/332117>
Hvis man skal henvise til en sti der er i webscope, kan man
specificere den ud fra webroden - fx "/db/somefile.mdb"
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
Philip Nunnegaard (31-10-2007)
| Kommentar Fra : Philip Nunnegaard |
Dato : 31-10-07 19:36 |
|
> Der er desuden en endnu mere aktuel problemstilling - nemlig det at
> brugen af ".." på en IIS6 som standard ikke er tilladt. Det betyder
> at ethvert (asp)kald til ".." vil give en fejl.
Dét problem oplevede jeg nu aldrig, da jeg brugte Access-databaser.
Her var det standard, at databasemappen lå udenfor webscope, og jeg kunne
uden problemer bruge Server.MapPath("../db/filnavn.mdb").
Jeg ved så ikke hvilken IIS, min udbyder brugte, men jeg havde selv IIS6, og
her virkede det.
| |
Jens Gyldenkærne Cla~ (31-10-2007)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 31-10-07 22:16 |
|
Philip Nunnegaard skrev:
> Dét problem oplevede jeg nu aldrig, da jeg brugte
> Access-databaser. Her var det standard, at databasemappen lå
> udenfor webscope, og jeg kunne uden problemer bruge
> Server.MapPath("../db/filnavn.mdb"). Jeg ved så ikke hvilken
> IIS, min udbyder brugte, men jeg havde selv IIS6, og her
> virkede det.
Det er muligt at jeg husker galt - og at det i så fald kun er
includefiler der er påvirket af indstillingen. Jeg har ikke lige en
test-IIS ved hånden, så jeg kan ikke teste det her og nu.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
|
|