Avatar billede c-lund Nybegynder
22. marts 2004 - 16:56 Der er 10 kommentarer og
1 løsning

Udtræk fra acces database

Hej.
Jeg skal trække nogle ord ud fra en data base og sætte dem ind i <body>

men jeg skal ud trække et ord desværre til en bestemt værdi

DATABASEN: Cases_over
type | overpunkter |
--------------------
1        Logo
2      Wesite
3        (OSV.)

hvordan bestemmer jeg hvor logo, website osv. skal stå

-----------------------------------
<html>

<head>


<%

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("db1.mdb")
Conn.Open DSN


strSQL = "Select * From cases_over"


Set rs = Conn.Execute(strSQL)


Do

 
overpunkter = rs("overpunkter")



  rs.MoveNext

Loop While Not rs.EOF

Conn.Close
Set Conn = Nothing
%>

</head>

<body>

<% Response.Write (overpunkter) %>

(her skal den så kun sætte f.eks. det ord ind der sværre til "type 1")

</body>
</html>

mvh.
Christian
Avatar billede c-lund Nybegynder
22. marts 2004 - 17:00 #1
desværre = der svære
Avatar billede eagleeye Praktikant
22. marts 2004 - 17:08 #2
Hvis du kun skal trække et ord ud kan du lave det med en WHERE:
strSQL = "Select * From cases_over where [type]=1"

eller skal de andre typer også bruges?? så kan du ligge dem ind i et array og order by type i SQL, droppe loopet og bruge getrows:

set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "Select overpunkter From cases_over order by [type] asc"
rs.Open SQL,Conn
arr = rs.GetRows


For at udksrive type 1 kan man skrive:

Response.Write arr(0)

det forudsætter så du har alle tpyerne 1,2,3,4,5,6,7,8,9 uden huller eller må man kode sig lidt ud af det.
Avatar billede c-lund Nybegynder
22. marts 2004 - 17:27 #3
alle de forskellige "type" skal bruges. men de skal bruges forskellige steder i <body>
-------------------------------------
<%

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("db1.mdb")
Conn.Open DSN




strSQL = "Select overpunkter From cases_over order by [type] asc"
rs.Open SQL,Conn
arr = rs.GetRows


  ' For at udksrive type 1 kan man skrive:

Response.Write arr(0)




Set rs = Conn.Execute(strSQL)




Conn.Close
Set Conn = Nothing
%>

<body>

<% Response.Write arr(0) %>
<% Response.Write arr(1) %>

<body>
Avatar billede eagleeye Praktikant
22. marts 2004 - 17:30 #4
Så skal denne linje fjernes:
Set rs = Conn.Execute(strSQL)


og du skal hvade denne evt efter den med Set conn = Server...
Set rs = Server.CreateObject("ADODB.recordset")
Avatar billede c-lund Nybegynder
22. marts 2004 - 17:35 #5
den siger fejl ved denne linie  "rs.Open SQL,Conn"
---------------------------

<html>

<head>

<%

Set Conn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.recordset")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("db1.mdb")
Conn.Open DSN




strSQL = "Select overpunkter From cases_over order by [type] asc"
rs.Open SQL,Conn
arr = rs.GetRows




Conn.Close
Set Conn = Nothing
%>

</head>
<body>

       
<% Response.Write arr(0) %>
<% Response.Write arr(1) %>


   
</body>
</html>
Avatar billede eagleeye Praktikant
22. marts 2004 - 17:42 #6
hov ja din SQL sætning hedder strSQL jeg fik kun skrevr SQL så prøv at rette den til:

rs.Open strSQL,Conn
Avatar billede c-lund Nybegynder
22. marts 2004 - 17:44 #7
ja, det var det. men nu siger den: Indekset er uden for området: 'arr'

hvordan udskriver jeg det i body

<body>

       
<% Response.Write arr(0) %>
<% Response.Write arr(1) %>


   
</body>
Avatar billede eagleeye Praktikant
22. marts 2004 - 17:52 #8
hmm ok, den giver et 2-dimentional array så man må skrive:

<% Response.Write arr(0,0) %>
<% Response.Write arr(0,1) %>
Avatar billede eagleeye Praktikant
22. marts 2004 - 17:54 #9
hvis du vil beholde det som disse:

<% Response.Write arr(0) %>
<% Response.Write arr(1) %>


skal denne linje
arr = rs.GetRows()


Lave om til disse:
do while not rs.EOF
  str = str & "," & rs("overpunkter")
  rs.MoveNext
loop
str = Mid(str,2)
arr=split(str,",")
Avatar billede c-lund Nybegynder
22. marts 2004 - 17:56 #10
cool så virker det. tak
Avatar billede eagleeye Praktikant
22. marts 2004 - 17:56 #11
ok :)
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