[心缘地方]同学录 |
首页 | 功能说明 | 站长通知 | 最近更新 | 编码查看转换 | 代码下载 | 常见问题及讨论 | 《深入解析ASP核心技术》 | 王小鸭自动发工资条VBA版 |
发表人 | 主题:关于一篇批量录入方法的疑惑。 |
王新安 身份:user 发帖:60 登陆次数:23 |
1F
发表于 2006/8/9 18:37:18
下面的是那篇文章,其中红色的地方让我非常不解。provinceinfo,filename这两个表从哪里来的,表结构是怎么样的。怎么都没讲。叫人家怎么理解啊?麻烦了,呵呵~~ 包括两个文件 1。allneeddj.asp:实现表单的生成 2. allneeddjresult.asp 处理表单批量录入 3.hbedu.mdb :数据库文件 其数据库结构如下 provinceid:省份编号 数值型 dytaocount:打样套数 数值型 papertaocount:纸样套数 数值型 cpcontent:出片内容 数值型 filename:文件名 文本型 beizhu:备注 备注型 本例子中以10条记录,每条记录6个字段说明. 1。allneeddj.asp 程序代码 <html> <head> <meta http-equiv="Content-Language" content="zh-cn"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <meta name="GENERATOR" content="Microsoft FrontPage 4.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <title>需求登记</title> </head> <body> <% set conn=server.createobject("adodb.connection") conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & _ Server.MapPath("hbedu.mdb") %> <form method="POST" action="allneeddjresult.asp"> <div align="center"> <center> <table border="1" width="700" bordercolorlight="#FFFFFF"> <tr> <td width="660" colspan="6"> <p align="center">需求登记</td> </tr> <tr> <td width="54" align="center">省份</td> <td width="66" align="center">打样张数</td> <td width="66" align="center">纸样张数</td> <td width="66" align="center">出片内容</td> <td width="80" align="center">文件名</td> <td width="328" align="center"> <p align="center">备注</td> </tr> <% rem 通过循环动态生成不同名称表单域 for i=1 to 10 %> <% set rs=server.createobject("adodb.recordset") sql="select * from provinceinfo " rs.open sql,conn,1,1 set rs1=server.createobject("adodb.recordset") sql1="select * from filename " rs1.open sql1,conn,1,1 %> <tr> <td width="54"><select name="<% response.write"data1"&i %>" size="1"> <% do while not rs.eof if province=cstr(rs("id")) then sel="selected" else sel="" end if response.write "<option " & sel & " value=''"+CStr(rs("id"))+"''>"+rs("province")+"</option>"+chr(13)+chr(10) rs.movenext loop set rs=nothing %> </select></td> <td width="66"><input type="text" name="<% response.write"data2"&i %>" size="8"></td> <td width="66"><input type="text" name="<% response.write"data3"&i %>" size="8"></td> <td width="66"><select size="1" name="<% response.write"data4"&i %>"> <option value="1">改动部分</option> <option value="2">全部内容</option> </select></td> <td width="80"><select name="<% response.write"data5"&i %>" size="1"> <% do while not rs1.eof if filename=cstr(rs1("filename")) then sel="selected" else sel="" end if response.write "<option " & sel & " value=''"+CStr(rs1("filename"))+"''>"+rs1("filename")+"</option>"+chr(13)+chr(10) rs1.movenext loop set rs1=nothing %> </select> </td> <td width="328"><textarea rows="2" name="<% response.write"data6"&i %>" cols="46"></textarea></td> </tr> <% next %> <tr> <td width="660" colspan="6"> <p align="center"><input type="submit" value="提交" name="B1"></td> </tr> </table> </center> </div> </form> </body> </html> 2.allneeddjresult.asp 程序代码 <% rem 定义二维数组存放从表单获取的值 dim data(10,6) for i= 1 to 6 for j= 1 to 10 mydata="data"+cstr(i)+cstr(j) data(j,i)=request.form(mydata) next next %> <% rem 输出表单输入的值 for i= 1 to 10 for j= 1 to 6 response.write data(i,j) next response.write"<br>" next ''response.end %> <% dim conn,rs Set conn = Server.CreateObject("ADODB.Connection") conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & _ Server.MapPath("hbedu.mdb") for i= 1 to 10 rem 循环批量入库 Set rs=SERVER.CreateObject("ADODB.Recordset") rs.Open "hbedu",conn,1,3 rs.AddNew rs("beizhu")=data(i,6) rs("filename")=data(i,5) rs("cpcontent")=data(i,4) rs("papertaocount")=data(i,3) rs("dytaocount")=data(i,2) rs("provinceid")=data(i,1) rs.Update rs.close set rs=nothing response.write"ok<br>" next %> |
嘎嘎,是我 身份:admin 发帖:1438 登陆次数:3287 |
2F
发表于 2006/8/9 19:17:56
恩,文章里没有提。 自己弄一个就行了,看他后面用了哪些字段,自己建就是了, 比如id,province |
王新安 身份:user 发帖:60 登陆次数:23 |
3F
发表于 2006/8/14 8:18:59
呵呵~~也是。 |
CopyRight © 心缘地方 2005-2999. All Rights Reserved |