電子工業出版社 JSHING HOUSE DF 【例15.7】编程实现下图15.14及15.,15所示的结果:在浏览器上显示Demo数据库uers 表中的所有记录,选择要修改的记录,修改该记录。(基础模块2.4”修改记录”) 历8·0带 选拌要修改的记最 请选择要修改的记录: 记粱号 地日2“mkou则e要略,回b9以2国1m 图15.14选择要修改的记录 于基根权记录 后·+日a赞案国收(历史山⑧·日@0帐 地址]数 CHl mody ecmd& 修改形 请修改记录数据 qqL11ll 电子邮箱:F 个人简历 e]成 奥开时山如”档上理工具值是,基吸读,的非心金国9% 图15.15修改记录 “修改记录”模块由两段程序代码组成( sele modi record.htm与 modify record.asp)组成。 Sele modi record.htm是选择要修改的记录, modify record.asp是修改选定的记录。 le modi record.htm程序流程如下图15.16所示:
【例 15.7】编程实现下图 15.14及 15.15 所示的结果:在浏览器上显示 Demo 数据库 users 表中的所有记录,选择要修改的记录,修改该记录。(基础模块 2.4”修改记录”) 图 15.14 选择要修改的记录 图 15.15 修改记录 “ 修改记录 ” 模 块 由 两 段 程 序 代 码 组 成 ( sele_modi_record.htm 与 modify_record.asp ) 组成。 Sele_modi_record.htm 是 选 择 要 修 改 的 记 录 , modify_record.asp 是修改选定的记录。 Sele_modi_record.htm 程序流程如下图 15.16 所示:
電子工業出版社 JEUISHING HOUSE DF ELECTRONCS INDSTR 建立一个到数据源的连结 建立记录集,存放查询结果 结果输出,提供选择 15.16Sele_ modi record.htm程序流程图 从程序流程图中可以看出,程序段“建立一个到数据源的连结”“建立记录集,存放査 询结果”与【例15.4】的模块中这两个程序段相同.只要检查修改相应的参数,就可直接引 用这两个程序段 < sele modi record.htm源程序> < Option Explicit % 建立一个到数据源的连接 DIm strDSN="ProviderMSDASQL, DRIVER=SQL Server: SERVER=127.0.0.1, DATABASE=Demo, UID=chen PWD=123 et conn Demo= Server CreateObject("ADODB Connection") connDemo. Open strDSN 建立记录集,存放查询结果 Dim strSqlselectUsers Set rsUsers= Server CreateObject("ADODB. Recordset strSqlSelectUsers="SELECT* FROM users rsUsers. Open strSqISelectUsers, conn Demo, 3, 3 <!-结果输出,以供选择-> chtml> <head> <metahttp-equiv="content-type"content"tExt/html;charset=gb2312">
图 15.16 Sele_modi_record.htm程序流程图 从程序流程图中可以看出,程序段“建立一个到数据源的连结”“建立记录集,存放查 询结果”与【例15.4】的模块中这两个程序段相同.只要检查修改相应的参数,就可直接引 用这两个程序段。 <sele_modi_record.htm 源程序>: <% Option Explicit %> <% '建立一个到数据源的连接 Dim strDSN Dim connDemo strDSN="Provider=MSDASQL;DRIVER={SQL Server};SERVER=127.0.0.1;DATABASE=Demo;UID=chen;PWD=123" Set connDemo = Server.CreateObject("ADODB.Connection") connDemo.Open strDSN '建立记录集,存放查询结果 Dim rsUsers Dim strSqlSelectUsers Set rsUsers = Server.CreateObject("ADODB.Recordset") strSqlSelectUsers="SELECT * FROM users" rsUsers.Open strSqlSelectUsers, connDemo,3,3 %> <!--结果输出,以供选择--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
電子工業出版社 JEUISHING HOUSE DF ELECTRONCS INDSTR <tie基础模块“修改记录”之“选择要修改的记录”</ile> <head> <body bgcolor"#COCOC0"> < font face="华文行楷"sie="6">选择要修改的记录</ont><hl> <h3>请选择要修改的记录:</h3> If Not rsUsers Eof Then <table border"I"cellpadding="8"cellspacing=0"width=383 <th width=115">. </th> < th width="120″>记录号</th> < th width="120">姓名</th <th width="56">*</th> Do While Not rsUsers Eof <th width="115"> </th> <td width="120"><%=rsUsers("id")%></td> <td width="120"><%=rsUsers username )%<d <a href="modify record. asp? id=<%=rsUsers("id")%>>< src- image s/editIgl </td> s Users MoveNext L End If </html> modify record.asp程序流程如下图15.17所示:
<title>基础模块“修改记录”之“选择要修改的记录”</title> </head> <body bgcolor="#C0C0C0"> <p> <font face="华文行楷" size="6">选择要修改的记录</font></h1> </p> <h3>请选择要修改的记录:</h3> <% If Not rsUsers.Eof Then %> <table border="1" cellpadding="8" cellspacing="0" width="383"> <tr> <th width="115" > . </th> <th width="120" >记录号</th> <th width="120" >姓名</th> <th width="56">* </th> </tr> <% Do While Not rsUsers.Eof %> <tr> <th width="115" > </th> <td width="120"><% =rsUsers("id") %></td> <td width="120"><% =rsUsers("username") %></td> <td width="56"> <a href="modify_record.asp?id=<% =rsUsers("id") %>"><img src="images/edit1.gif" width="16" height="15" border="0"></a> </td> <% rsUsers.MoveNext Loop End If %> </table> </body> </html> modify_record.asp 程序流程如下图 15.17 所示:
電子工業出版社 JEUISHING HOUSE DF ELECTRONCS INDSTR 接受表单输入数据 建立一个到数据源的连结 保存按钮被点击 建立记录集,存放查询结果 建立一个到数据源的连结 受表单输入数据,写入数据库 建立记录集,存放查询结果 建立表单与记录集的连接 图15.17 modify record.asp程序流程图 modify record.asp源程序 < Option Explicit %> 接受从表单读出输入的数据 Dim save id=Request QueryString("id") save=Request Form("btnSave") 判断本页面的”保存”按钮是否被点击 If save="保存"Then 建立一个到数据源的连接 Dim strdsN Dim conn Demo strDSN="ProviderMSDASQL DRIVER=SQL Server: SERVER=127.0.0.1: DATABASE=Demo UID=chen, PWD=123 Set connDemo= Server CreateObject("ADODB Connection") conn Demo. Open strDSN 建立记录集,存放查询结果 Dim strSqISelectUsers Set rsUsers= Server CreateObject("ADODB. Recordset")
图 15.17 modify_record.asp程序流程图 <modify_record.asp 源程序> <% Option Explicit %> <% '接受从表单读出输入的数据 Dim id Dim save id=Request.QueryString("id") save=Request.Form("btnSave") '判断本页面的"保存"按钮是否被点击 If save="保存" Then '建立一个到数据源的连接 Dim strDSN Dim connDemo strDSN="Provider=MSDASQL;DRIVER={SQL Server};SERVER=127.0.0.1;DATABASE=Demo;UID=chen;PWD=123" Set connDemo = Server.CreateObject("ADODB.Connection") connDemo.Open strDSN '建立记录集,存放查询结果 Dim rsUsers Dim strSqlSelectUsers Set rsUsers = Server.CreateObject("ADODB.Recordset")
電子工業出版社 SHING HOUSE DF ELECTRONCS strSqlSelectUsers="SELECT* FROM users WHERE username"& Request Form("txtUser Name") rsUsers. Open strSqlselectUsers, connDemo, 1, 3 接受表单输入数据,写入数据库 rsUsers("username"REquest Form(txtUserName") rs Users("phone"REquest Form("txtPhone") rsUsers("email"REquest Form(txtEmail") rsUsers("resume"REquest Form("txtResume") rsUsers. close Set rsUsers=Nothing 显示执行结果 msg="编辑成功!ln" Response. Write("<scriptalert(& msg &"), history. go-1)/script> " Response. End 建立一个到数据源的连接 strDSN="ProviderMSDASQL, DRIVER=ISQL Server): SERVER=127.0.0.1; DATABASE=Demo UID=chen, PWD=123 Set connDemo =Server CreateObject("ADODB Connection") connDemo. Open strDSN 建立记录集,存放查询结果 Set rsUsers= Server CreateObject("ADODB. Recordset") strSqlSelectUsers="SELECT*FROM users WhEre id="& id rsUsers. Open strSqlselectUsers, connDemo, 3, 3 <html <head> <metahttp-equiv="content-type"content="Text/html;charset=gb2312> title>基础模块“修改记录”之“修改记录”<lile> <body bgcolor"#COCOCO"> < font face="华文行楷”sie="6">修改记录</ont><hl> <hp> <h3>请修改记录数据:<h3>
strSqlSelectUsers="SELECT * FROM users WHERE username='" & Request.Form("txtUserName") & "'" rsUsers.Open strSqlSelectUsers, connDemo,1,3 '接受表单输入数据,写入数据库 rsUsers("username")=Request.Form("txtUserName") rsUsers("phone")=Request.Form("txtPhone") rsUsers("email")=Request.Form("txtEmail") rsUsers("resume")=Request.Form("txtResume") rsUsers.Update rsUsers.Close Set rsUsers=Nothing '显示执行结果 Dim msg msg="编辑成功!\n" Response.Write("<script>alert('" & msg & "');history.go(-1)</script>") Response.End Else '建立一个到数据源的连接 strDSN="Provider=MSDASQL;DRIVER={SQL Server};SERVER=127.0.0.1;DATABASE=Demo;UID=chen;PWD=123" Set connDemo = Server.CreateObject("ADODB.Connection") connDemo.Open strDSN '建立记录集,存放查询结果 Set rsUsers = Server.CreateObject("ADODB.Recordset") strSqlSelectUsers="SELECT * FROM users WHERE id=" & id & "" rsUsers.Open strSqlSelectUsers, connDemo,3,3 End If %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>基础模块“修改记录”之“修改记录”</title> </head> <body bgcolor="#C0C0C0"> <p> <font face="华文行楷" size="6">修改记录</font></h1> </p> <h3>请修改记录数据:</h3>