Asa Medlem sedan dec. 2001 1 860 inlägg Frågan 14 okt. 2003 19:11 #1 Jag skulle vilja ha en kod som skriver ut alla tabeller som finns i en databas i en selectruta. Databasen är en MySQL databas. SKulle inte skada att ha en sådan kod till en accessdatabas oxå.
Sen ska man kunna gå vidare å se alla fält i den tabellen man valt!
Nån som vill hjälpa mig?
Har sökt lite men vet inte riktigt vad jag ska söka på så jag hittade inget. :(
peppar Medlem sedan dec. 2001 873 inlägg Asa Medlem sedan dec. 2001 1 860 inlägg Den har jag kollat. Vill gärna ha mindre kod bara! Jag ska när jag valt i en selectruta få fram ett formulär med fältets namn i value!
I min databas finns bara 1 fält i de tabeller jag vill lista! Och MySQL vore bra...
Asa Medlem sedan dec. 2001 1 860 inlägg Så här har jag gjort. Nån som har anmärkning på koden så skriv:
<%Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db/users.mdb")
If Request.QueryString("action") = "" Then%>
<select name="tabell" onChange="self.location.href=this.options[this.selectedIndex].value;">
<option value=""> --- Välj tabell --- </option><br>
<%Set RecSet = Conn.OpenSchema(20)
Do while Not RecSet.EOF
If Left(RecSet.Fields("TABLE_NAME"),4) <> "MSys" Then
Set RS = Conn.Execute("SELECT * FROM " & RecSet.Fields("TABLE_NAME"))
If RS.Fields.Count = 1 Then
Response.Write "<option value=""print.asp?table=" & RecSet.Fields("TABLE_NAME") & """>" & RecSet.Fields("TABLE_NAME") & "</option><br>"
End if
RS.Close
End If
RecSet.MoveNext
Loop
RecSet.Close%>
</select>
<br><br>
<%If Request.QueryString("table") <> "" Then
Set RS = Conn.Execute("SELECT * FROM " & Request.QueryString("table"))
For i = 0 to RS.Fields.Count - 1%>
<form method="POST" action="?action=add&tbl=<%=Request.QueryString("table")%>&falt=<%=RS.Fields(i).Name%>">
<b><%=RS.Fields(i).Name%></b><br>
<input type="text" name="falt">
<input type="submit" value="Lägg till">
</form>
<%Next
RS.Close
End if
ElseIf Request.QueryString("action") = "add" Then
Conn.Execute("Insert Into " & Request.QueryString("tbl") & "(" & Request.QueryString("tbl") & ") Values('" & Request.Form("falt") & "')")
Response.Redirect "print.asp"
End if%>
Du kan använda dig av kod från denna tråd . Jag tror att det blir lite smidigare. :)
Asa Medlem sedan dec. 2001 1 860 inlägg Tackar, ska kolla på den!