Avatar billede a55830 Praktikant
17. august 2004 - 17:37 Der er 21 kommentarer og
1 løsning

Access hen data fra access

Hvorfor virker det ikke

<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("/db/picdata.mdb")
Conn.Open DSN

' SQL forespørgsel
strSQL = "Select * from Tabel1"
' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

' Gennemløb Recordset (rs) med en løkke
Do

  ' Udskriv værdien af kolonnen links
  Response.Write rs("Links") & "<br>"

  ' Gå til næste Record i rs
  rs.MoveNext

' Fortsæt indtil rs er gennemløbet (EOF = End Of File)
Loop While Not rs.EOF

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>
Avatar billede a55830 Praktikant
17. august 2004 - 17:37 #1
jeg har lavet filen PicData.asp men den kommer med en fejl :
HTTP 500 - Intern serverfejl
Internet Explorer
Avatar billede eagleeye Praktikant
17. august 2004 - 17:42 #2
Du skulle gerne få en bedre fejl kode/beskrivelse ved at slå denne fra i IE:

funktioner -> internetindstillinger -> avanceret -> fjern kryds i "vis meddelelse om uskadelige http-fejl"
Avatar billede eagleeye Praktikant
17. august 2004 - 17:44 #3
Men du skal havde rette
Do
...
...
Loop While Not rs.EOF

Til dette for at undgå fejl hvis recordsetet er tom fra starten af:

Do While Not rs.EOF
...
...
Loop
Avatar billede a55830 Praktikant
17. august 2004 - 17:45 #4
ok hva betyder ...

undskyld jeg ikke kan tyde det
Avatar billede eagleeye Praktikant
17. august 2004 - 17:47 #5
Det betyder alt det kode du har imellem linjen Do og linjen Loop While Not rs.EOF
Avatar billede a55830 Praktikant
17. august 2004 - 17:48 #6
ahh ok
Avatar billede a55830 Praktikant
17. august 2004 - 17:50 #7
men det virker ikke satdigvæk samme fejl

mit webhotel
ser sådanne ud
/db
/wwwroot

min fil ligger i wwwroot og databasen ligger i db
Avatar billede eagleeye Praktikant
17. august 2004 - 17:54 #8
Prøv som beskrevet i 17/08-2004 17:42:30

Ok så kan du ikke connecte med Server.Mappath.
Server.Mappath kan kun give en folder som er inde i folderen /wwwroot.
Du er nød til at skrive det som "d:\xxx\xxx\db\picdata.mdb" i connection strengen.

Du kan finde stien ved at lave en lille fil hvor du har dette styk kode som skriver stien til wwwroot:
<%
Response.Write Server.Mappath("/")
%>

Det giver måske:
d:\homes\domainnavn_dk\wwwroot

Så kaan du skifte wwwroot ud med db, og skrive din connection streng som:

DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=d:\homes\domainnavn_dk\db\picdata.mdb"
Avatar billede a55830 Praktikant
17. august 2004 - 17:55 #9
kan det være fordi mit webhotel bruger mySQL
Avatar billede eagleeye Praktikant
17. august 2004 - 17:56 #10
Bruger du mySQL eller Access som database?
Hvilket web-hotel har du?
Avatar billede a55830 Praktikant
17. august 2004 - 17:58 #11
jeg bruger cliche som webhotel
og access som database
Avatar billede eagleeye Praktikant
17. august 2004 - 17:59 #12
ok så betyder det ikke noget de også tilbyder mySQL.
Prøv det sidste jeg har forslået: 17/08-2004 17:54:53
Avatar billede a55830 Praktikant
17. august 2004 - 18:00 #13
er rettet til

men samme fejl
Avatar billede eagleeye Praktikant
17. august 2004 - 18:01 #14
Hvad er fejlen nu?
Avatar billede a55830 Praktikant
17. august 2004 - 18:03 #15
det samme som det var fra starten
Avatar billede eagleeye Praktikant
17. august 2004 - 18:04 #16
Har du gjort som jeg beskrev 17/08-2004 17:42:30
Så skulle du nemlig få den rigtige fejl kode + linje nummer.
Avatar billede a55830 Praktikant
17. august 2004 - 18:04 #17
her er det tilrettet

<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("D:\web\blueeye.dk_p7e8vv\db\picdata.mdb")
Conn.Open DSN

' SQL forespørgsel
strSQL = "Select * from Tabel1"
' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

' Gennemløb Recordset (rs) med en løkke
Do While Not rs.EOF

  ' Udskriv værdien af kolonnen links
  Response.Write rs("Links") & "<br>"

  ' Gå til næste Record i rs
  rs.MoveNext

' Fortsæt indtil rs er gennemløbet (EOF = End Of File)
Loop

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>
Avatar billede a55830 Praktikant
17. august 2004 - 18:05 #18
ups

Server.MapPath() error 'ASP 0172 : 80004005'

Invalid Path

/PicData.asp, line 5

The Path parameter for the MapPath method must be a virtual path. A physical path was used.
Avatar billede a55830 Praktikant
17. august 2004 - 18:09 #19
uppsss smid lige et svar

så du kan få points

fejlen er rettet
Avatar billede a55830 Praktikant
17. august 2004 - 18:15 #20
nu kommer den med en fejl
Microsoft VBScript compilation error '800a0401'

Expected end of statement

/PicData.asp, line 17

Response.Write "<img src="" & rs("Link") & "">" "<br>"
Avatar billede eagleeye Praktikant
17. august 2004 - 18:19 #21
Ok :)

Prøv sådan her for at udskrive en " skal man skrive to "" efter hinanden:
Response.Write "<img src=""" & rs("Link") & """>" "<br>"
Avatar billede eagleeye Praktikant
17. august 2004 - 18:22 #22
:) og så lige få <br> ind i strengn:

Response.Write "<img src=""" & rs("Link") & """><br>"
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester