Populate 2 Select Lists in Search Form from Access and Display Search Results, Detail and Update Page w/Delete Ability:
Code:
Download Sample Database
search.asp
Highlight
<%Dim conn,rs,strconn,DBQValue set conn = server.createobject("adodb.connection") set rs = server.createobject("adodb.recordset") conn.open "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & server.mappath("test.mdb") strsql = "select * from test" rs.open strsql, conn, 2, 2 %>
<%if request.querystring("Results") = "False" then%>
Sorry, there are no matching records.
<%end if%> <%if request.querystring ("Updated") = "True" then%>
The record has been updated.
<%end if%> <%if request.querystring ("Record") = "Deleted" then%>
The record has been deleted.
<%end if%>
Name:
--Select a Name--
<%If rs.BOF and rs.EOF Then%> <%else%> <%Do While Not rs.EOF%>
"><%=rs("Name")%>
<%rs.movenext%> <%loop%> <%end if%>
Division:
--Select a Division--
<%If rs.BOF and rs.EOF Then%> <%else%> <%rs.movefirst Do While Not rs.EOF%>
"><%=rs("Division")%>
<%rs.movenext%> <%loop%> <%end if%>
<% rs.close conn.close set rs = nothing set conn = nothing %>
list.asp
Highlight
<% Dim conn,rs,strconn,DBQValue set conn = server.createobject("adodb.connection") set rs = server.createobject("adodb.recordset") conn.open "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & server.mappath("test.mdb") 'on error resume next strsql = "select * from test where" If Request.Form("Name") <> "" Then strsql = strsql & " Name = '" &_ Request.Form("Name") & "' and " End If If Request.Form("Division") <> "" Then strsql = strsql & " Division = '" & _ Request.Form("Division") & "' and " End If strsql=left(strsql,(len(strsql) - 5)) 'Response.Write (strsql) rs.open strsql,conn, 2, 2 %> <%If rs.BOF and rs.EOF Then response.redirect "search.asp?Results=False" Else%> <%If Not rs.BOF Then%>
Search Results:
Name:
Division:
<%Do While Not rs.EOF%>
<%=rs("Name")%>
<%=rs("Division")%>
">Details...
<% rs.MoveNext Loop %>
<%End If%> <%End If%> <% rs.close conn.close set rs = nothing set conn = nothing %>
details.asp
Highlight
<% Dim conn,rs,strconn,DBQValue set conn = server.createobject("adodb.connection") set rs = server.createobject("adodb.recordset") conn.open "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & server.mappath("test.mdb") 'on error resume next strsql = "select * from Test where" If Request.Querystring("ID") <> "" Then strsql = strsql & " ID = " &_ Request.Querystring("ID") End If 'Response.Write (strsql) rs.open strsql,conn, 2, 2 %> <%If Not rs.BOF Then%> <%Do While Not rs.EOF%>
<%=rs("Title")%> <%=rs("Name")%>
Division:
<%=rs("Division")%>
Phone:
<%=rs("Phone")%>
E-Mail:
"><%=rs("Email")%>
">Edit...
<% rs.MoveNext Loop %>
<%End If%> <% rs.close conn.close set rs = nothing set conn = nothing %>
update.asp
Highlight
<% dim conn, rs, strsql, strconn, strID if request.querystring("UpdateID") <> "" then strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("test.mdb") set conn = server.createobject("adodb.connection") conn.open strconn strID = Request.querystring("UpdateID") set rs = server.createobject("adodb.recordset") strsql = "select * from test where ID =" & strID rs.open strsql, conn, 2, 2 rs("Name") = request.form("Name") rs("Title") = request.form("Title") rs("Division") = request.form("Division") rs("Phone") = request.form("Phone") rs("Email") = request.form("Email") rs.update set rs = nothing set conn = nothing response.redirect ("search.asp?Updated=True") end if if request.querystring("DeleteID") <> "" then strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("test.mdb") set conn = server.createobject("adodb.connection") conn.open strconn set rs = server.createobject("adodb.recordset") strsql = "delete " & _ " from test" & _ " where ID=" & request.querystring("DeleteID") conn.execute(strsql) set rs = nothing set conn = nothing response.redirect "search.asp?Record=Deleted" else strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("test.mdb") set conn = server.createobject("adodb.connection") conn.open strconn set rs = server.createobject("adodb.recordset") strsql = "select * from test where" strsql = strsql & " ID = " &_ Request.Querystring("ID") rs.open strsql, conn end if %> <% rs.movefirst Do While NOT rs.EOF %>
Name:
">
Title:
">
Division:
">
Phone:
">
E-Mail:
">
')">
')">
<% rs.movenext Loop %>