Asa Medlem sedan dec. 2001 1 860 inlägg Trådstart 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!