Jeg har en søgeside der fungere fint med udtræk fra access database. Når den har fundet en post fra database skal den vise resultat i en input form, og når der ikke er nogen resultat fra søgningen skal input formen være tom.
<% ' FP_ASP ASP, der er genereret automatisk af en FrontPage-komponent. Undlad at redigere.
On Error Resume Next Session("FP_OldCodePage") = Session.CodePage Session("FP_OldLCID") = Session.LCID Session.CodePage = 1252 Session.LCID = 1030 Err.Clear
strErrorUrl = ""
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then If Request.Form("VTI-GROUP") = "0" Then Err.Clear
Set fp_conn = Server.CreateObject("ADODB.Connection") FP_DumpError strErrorUrl, "Der kan ikke oprettes forbindelse."
Set fp_rs = Server.CreateObject("ADODB.Recordset") FP_DumpError strErrorUrl, "Postsæt kan ikke åbnes."
fp_conn.Open Application("Database1_ConnectionString") FP_DumpError strErrorUrl, "Databasen kan ikke åbnes."
fp_rs.Open "Kunder", fp_conn, 1, 3, 2 ' adOpenKeySet, adLockOptimistic, adCmdTable FP_DumpError strErrorUrl, "Postsæt kan ikke åbnes."
fp_rs.AddNew FP_DumpError strErrorUrl, "Der kan ikke føjes nye poster til databasen." Dim arFormFields0(18) Dim arFormDBFields0(18) Dim arFormValues0(18)
fp_rs.Update FP_DumpError strErrorUrl, "Databasen kan ikke opdateres."
fp_rs.Close fp_conn.Close
FP_FormConfirmation "text/html; charset=windows-1252",_ "Formularbekræftelse",_ "Du har sendt følgende oplysninger:",_ "search.asp",_ "Vend tilbage til formularen."
<% ' Henter værdien fra soeg.htm strKeyword = Trim(Request.Form("Keyword"))
If Len(strKeyword) = 0 Then ' Hvis der ikke er skrevet i feltet Response.Clear Response.Redirect("search.htm") Else ' Hvis der er skrevet i feltet strKeyword = Replace(strKeyword,"'","''") End If
' Opbygger en dynamisk SQL streng strSQL = "SELECT ID, Navn, Adresse, by, postnr, telefon, FROM Kunder WHERE" strSQL = strSQL & " (Navn LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (Adresse LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (by LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (postnr LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (telefon LIKE '%" & strKeyword & "%')"
' Skaber DSNLess forbindelse til DBen strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("search_2000.mdb") Set myConn = Server.CreateObject("ADODB.Connection") myConn.Open strDSN set rs = Server.CreateObject("ADODB.recordset") rs.Open strSQL, myConn If Not (rs.BOF Or rs.EOF) Then ' Hvis der er fundet poster på søgningen Response.Write "<p>Søgeresultat(er)</p>" Response.Write "<table border=1>" Response.Write "<tr><th>Navn</th><td>" & rs("Navn") & "</td></tr>" Response.Write "<tr><th>Adresse</th><td>" & rs("Adresse") & "</td></tr>" Response.Write "<tr><th>Postnr</th><td>" & rs("postnr") & "</td></tr>" Response.Write "<tr><th>By</th><td>" & rs("by") & "</td></tr>" Response.Write "<tr><th>telefon</th><td>" & rs("telefon") & "</td></tr>"
Do While Not rs.EOF Response.Write "" Response.Write "" Response.Write "" Response.Write "" Response.Write ""
rs.MoveNext Loop Response.Write "</table>" Else ' Hvis der ikke er fundet poster på søgningen Response.Write "<p>Der er ikke fundet noget på denne søgning</p>"
End If
' Rydder op efter os myConn.Close Set myConn = Nothing %>
if NOT rs.EOF then ' Hvis den ikke er tom variabel1 = rs("navn") variabel2 = rs("adresse") variabel3 = rs("postnr") variabel4 = rs("by") variabel5 = rs("telefon")
Nu har jeg prøvet at kopiere al koden ind i en ny side og afvikle den, selv om jeg udkommenterer AL VBS kode for jeg ikke noget frem. Jeg kan slet ikke få hoved og hale på hvad koden gør og hvornår.
Du skal dele siden op i en HTML del og en VBS del.
VBS delen skal:
Lave en forbindelse til databasen Åbne et recordset på baggrund af et SQL udtryk Lægge værdier i variabler som hentes fra recorsettet Lukke recordset og forbindelse
HTML delen skal
Vise en tabel med input felter Værdien i felterne er variablerne
Så kan du lave noget med <form> tags og POST metoden så du hopper til en ny side med de indtastede værdier. Men det er næste step.
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.