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
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
22. marts 2004 - 17:00
#1
desværre = der svære
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.
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>
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")
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>
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
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>
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) %>
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,",")
22. marts 2004 - 17:56
#10
cool så virker det. tak
22. marts 2004 - 17:56
#11
ok :)
Kurser inden for grundlæggende programmering