/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
databaseforbindelse med SSI
Fra : pepss


Dato : 18-08-03 17:46

hejsa NG

jeg har et problem men min databaseforbindelse.
jeg har lagt min databaseforbindelse i en include fil men da mappen til
databaser ligger uden for www mappen giver det mig nogen problemer!
normalt vil jeg bare skrive sådan i min databaseforbindelse:

DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("../db/db1.mdb")

men da filen også blivet inkludere i undermapper virker det jo ikke alle
steder! jeg har så prøvet at skrive Server.MapPath("/../db/db1.mdb") men så
får jeg fejlen:

Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access-driver]Der opstod en generel fejl.
Registreringsnøglen Temporary (volatile) Jet DSN for process 0xeb8 Thread
0x248 DBC 0x10364bc Jet kan ikke åbnes.
/include/data.asp, line 7

min kode:

' ADODB connection objektet
Set Conn = Server.CreateObject("ADODB.Connection")
' Husk at angive den rigtige sti til din database
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("/../db/db1.mdb") <-- line 7
' Åben databaseforbindelsen
Conn.Open DSN

er der nogen der har en ide til hvordan jeg kan få det til at virke i alle
mapper og under mapper?



--
pepss
den ordblinde der prøver at blive web-designer
www.team-blitz.dk



 
 
Jørn Andersen (18-08-2003)
Kommentar
Fra : Jørn Andersen


Dato : 18-08-03 20:26

On Mon, 18 Aug 2003 18:45:43 +0200, "pepss" <olefriis@privat.dk>
wrote:

>DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &
>Server.MapPath("../db/db1.mdb")
>
>men da filen også blivet inkludere i undermapper virker det jo ikke alle
>steder! jeg har så prøvet at skrive Server.MapPath("/../db/db1.mdb") men så
>får jeg fejlen:

Når du skriver:
/../
siger du sådan set, at du vil have den mappe, der ligger ét niveau
under roden, og det giver jo ingen mening.

Der kan være flere løsninger:
1) brug en absolut sti:
Server.MapPath("/db/db1.mdb")
2)
Indsæt en sti-justeringsvariabel:
Server.MapPath("" & strPathAdjust & "db/db1.mdb")

Hvis din side ligger i roden, sætter du så:
strPathAdjust = ""
på siden - *før* include-filen
Ligger den et niveau væk fra roden, sætter du:
strPathAdjust = "../"
osv.

3)
Endelig kan du have forskellige include-filer for hvert niveau.
Ulempen er så, at du skal huske at rette alle filer, hvis du ændrer
db-navn.


Good luck!

--
Jørn Andersen,
Brønshøj

Torben Brandt (18-08-2003)
Kommentar
Fra : Torben Brandt


Dato : 18-08-03 20:46

Jørn Andersen wrote:
> pepss wrote:
>
>>men da filen også blivet inkludere i undermapper virker det jo ikke alle
>>steder! jeg har så prøvet at skrive Server.MapPath("/../db/db1.mdb") men så
>>får jeg fejlen:
>
> Når du skriver:
> /../
> siger du sådan set, at du vil have den mappe, der ligger ét niveau
> under roden, og det giver jo ingen mening.

Jo, det giver da fin mening... pepss skrev:
>> jeg har lagt min databaseforbindelse i en include fil men da mappen
>> til databaser ligger uden for www mappen giver det mig nogen
>> problemer!
Hvis vi har denne struktur:
mappe1
\- db
\- db1.mdb
\- www
\- index.asp
så kan man referere fra index.asp til db1.mdb med
Server.MapPath("/../db/db1.mdb") hvis www er sat som rod for webstedet.

mvh Torben


Jørn Andersen (18-08-2003)
Kommentar
Fra : Jørn Andersen


Dato : 18-08-03 21:03

On Mon, 18 Aug 2003 21:46:08 +0200, Torben Brandt
<name@domain.invalid> wrote:

>Jørn Andersen wrote:
>> Når du skriver:
>> /../
>> siger du sådan set, at du vil have den mappe, der ligger ét niveau
>> under roden, og det giver jo ingen mening.
>
>Jo, det giver da fin mening... pepss skrev:
> >> jeg har lagt min databaseforbindelse i en include fil men da mappen
> >> til databaser ligger uden for www mappen giver det mig nogen
> >> problemer!

Ups - den havde jeg lige overset, sorry!

>Hvis vi har denne struktur:
>mappe1
>\- db
> \- db1.mdb
>\- www
> \- index.asp
>så kan man referere fra index.asp til db1.mdb med
>Server.MapPath("/../db/db1.mdb") hvis www er sat som rod for webstedet.

Jeg troede egentlig ikke, at man kunne gå under web-roden med
Server.MapPath. Men efter at have testet, kan jeg se, at du har ret.
Tak for korrektionen!

--
Jørn Andersen,
Brønshøj

pepss (20-08-2003)
Kommentar
Fra : pepss


Dato : 20-08-03 14:01


"Torben Brandt" skrev
> > pepss wrote:
> >
> >>men da filen også blivet inkludere i undermapper virker det jo ikke alle
> >>steder! jeg har så prøvet at skrive Server.MapPath("/../db/db1.mdb") men

> >>får jeg fejlen:
> >> jeg har lagt min databaseforbindelse i en include fil men da mappen
> >> til databaser ligger uden for www mappen giver det mig nogen
> >> problemer!
> Hvis vi har denne struktur:
> mappe1
> \- db
> \- db1.mdb
> \- www
> \- index.asp
> så kan man referere fra index.asp til db1.mdb med
> Server.MapPath("/../db/db1.mdb") hvis www er sat som rod for webstedet.

tak for dit svar men jeg kan ikke får det til at virke!
strukturen ser sådan du som du skriv.
har du en ide til hvad jeg gør forkert?


--
pepss
den ordblinde der prøver at blive web-designer
www.team-blitz.dk



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste