Avatar billede sol99 Nybegynder
20. marts 2003 - 11:06 Der er 15 kommentarer og
1 løsning

Skal hente data fra databaser og sætte ind på ASP-side

Hej
Jeg er nybegynder...

Jeg skal på min hjemmeside have både et nyhedsmodul og et referencemodul som hentes fra en database. Jeg har gjordt det således:

<%

Response.Buffer = True

Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("nyheder.mdb" & "referencer.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath

    Sql = "SELECT * FROM nyheder & referencer ORDER BY Dato DESC"
    Set Record =  Con.Execute(Sql)

%>

Men hvorfor virker det ikke. Det virker nemlig godt nok, når jeg kun henter fra en database-fil:

<%

Response.Buffer = True

Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("nyheder.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath

    Sql = "SELECT * FROM nyheder ORDER BY Dato DESC"
    Set Record =  Con.Execute(Sql)

%>

-----

Jeg håber I kan hjælpe mig!

Mvh
Søren
Avatar billede medions Nybegynder
20. marts 2003 - 11:19 #1
Venligst luk dette spm. Du må kun oprette spm's én gang!

//>Rune
Avatar billede keysersoze Ekspert
20. marts 2003 - 11:21 #2
først og fremmest er det stort set altid en ekstrem dårlig idé at arbejde med mere end én database...

grunden til at det ikke virker er, at du ikke har én database der hedder ("nyheder.mdb" & "referencer.mdb") og du kan ikke refererer til to database på den måde... du er nødt til at skabe to connections fx;

DBPath1 = "DBQ=" & server.mappath("nyheder.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath1
DBPath2 = "DBQ=" & server.mappath("referencer.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath2
Avatar billede medions Nybegynder
20. marts 2003 - 11:23 #3
keyseroze> Dit eksempel vil da ikke virke! -Dine Connection objekter er de samme...

DBPath1 = "DBQ=" & server.mappath("nyheder.mdb")
Con1.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath1
DBPath2 = "DBQ=" & server.mappath("referencer.mdb")
Con2.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath2

Du mener vel sådan ^

//>Rune
Avatar billede medions Nybegynder
20. marts 2003 - 11:29 #4
Så kan du gøre sådan :

<%
    Set Con = Server.CreateObject("ADODB.Connection")
    DBPath = "DBQ=" & server.mappath("nyheder.mdb" & "referencer.mdb")
    Con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath

    Sql = "SELECT Nyheder.Dato, Nyheder.Nyhed, Nyheder.Forfatter, Nyheder.ID, Referencer.ID, Referencer.Dato, Referencer.Reference FROM Nyheder,Referencer"
    Set Record =  Con.Execute(Sql)
   
    While Not Record.EOF
        Response.Write(Record("Reference") & "<br>")
    Record.MoveNext()
    Wend
%>

//>Rune
Avatar billede medions Nybegynder
20. marts 2003 - 11:30 #5
Nej, hov!
Sådan her:

<%
    Set Con = Server.CreateObject("ADODB.Connection")
    DBPath = "DBQ=" & server.mappath("db1.mdb")
    Con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath

    Sql = "SELECT Nyheder.Dato, Nyheder.Nyhed, Nyheder.Forfatter, Nyheder.ID, Referencer.ID, Referencer.Dato, Referencer.Reference FROM Nyheder,Referencer"
    Set Record =  Con.Execute(Sql)
   
    While Not Record.EOF
        Response.Write(Record("Reference") & "<br>")
    Record.MoveNext()
    Wend
%>

//>Rune
Avatar billede sol99 Nybegynder
20. marts 2003 - 11:33 #6
Kan du, Rune, ikke bare maile mig de to databaser sat sammen til én? Det er nok smartest med en database...
Avatar billede medions Nybegynder
20. marts 2003 - 11:34 #7
sol99> Øhh det har jeg da oxo lige gjort!

//>Rune
Avatar billede medions Nybegynder
20. marts 2003 - 11:35 #8
Nu er den sendt igen igen!

//Rune
Avatar billede sol99 Nybegynder
20. marts 2003 - 11:35 #9
Okay, det har du gjort. Skal jeg så sætte dette script ind øverst i min asp-fil?


<%
    Set Con = Server.CreateObject("ADODB.Connection")
    DBPath = "DBQ=" & server.mappath("db1.mdb")
    Con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath

    Sql = "SELECT Nyheder.Dato, Nyheder.Nyhed, Nyheder.Forfatter, Nyheder.ID, Referencer.ID, Referencer.Dato, Referencer.Reference FROM Nyheder,Referencer"
    Set Record =  Con.Execute(Sql)
   
    While Not Record.EOF
        Response.Write(Record("Reference") & "<br>")
    Record.MoveNext()
    Wend
%>
Avatar billede medions Nybegynder
20. marts 2003 - 11:36 #10
Well, sæt det ind der hvor du vil ha' udskrevet alle dine referencer...

//>Rune
Avatar billede sol99 Nybegynder
20. marts 2003 - 11:36 #11
Jeg fandt forresten et mail script på din hjemmeside. Kan det bruges til at sende en formular fra en hjemmeside til en mailadresse?
Avatar billede medions Nybegynder
20. marts 2003 - 11:39 #12
Ja...

-Hehe, skriv lige i min gæstebog :-)

//>Rune
Avatar billede sol99 Nybegynder
20. marts 2003 - 11:40 #13
Hvad betyder det her, som du skriver sidst i scriptet:
    While Not Record.EOF
        Response.Write(Record("Reference") & "<br>")
    Record.MoveNext()
    Wend
Avatar billede medions Nybegynder
20. marts 2003 - 11:43 #14
Det udskriver alle din poster i din database...

While Not Record.EOF = Så længe den ikke har nået "End Of File" altså bunden af din databases tabel, skal den udskrive dine Referencer...

Tag en tur ind forbi www.html.dk/tutorials/asp !

//>Rune
Avatar billede sol99 Nybegynder
20. marts 2003 - 11:44 #15
Okay, jamen så siger jeg mange TAK. Du får point fra begge de oprette spørgsmål.
Avatar billede medions Nybegynder
20. marts 2003 - 11:45 #16
Fair nok :-)
Thx 4 Poinz

//>Rune
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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