请选择 进入手机版 | 继续访问电脑版
点点网模板设计大赛 phpchina

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 用悬赏 三天解决问题 解决访问速度慢 论坛支持农历生日 - 地图任务 - 给官方提建议

论坛活动及任务 归纳网站最新活动 更新邮件保护帐号安全 第一季积分兑换活动 - 12周年上海聚会照片

万元奖励等你拿——点点网模板设计大赛 畅销译文征名——让最火的畅销书,印上你的标签 联系招聘客服 蓝色理想帮你找工作!

查看: 1579|回复: 2

[asp][sqlserver][dw]在同一页面同时修改多条记录,请帮忙修改 [复制链接]

fightx0001 楼主
帖子
7
体力
26
威望
0
发表于 2005-12-1 12:31:00 |显示全部楼层
后台数据库:sqlserver 2000
数据表: b01
字段      code char(8)--唯一列
           b0102 varchar(50)  文本
           b0108 numeric(9,2)
           b0109 numeric(9,2)
           b0110 numeric(9,2)
编辑器:dw2004 MX
记录集r1, 内容为根据seesion变量查询出的表b01的内容
实现目的:先根据记录集R1内容生成表格,象在EXECL中那样修改后,点提交修改数据库
请直接修改代码,万分感谢!

原代码:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
<!--#include file="../../Connections/conn.asp" -->
<%
// 01更新数据

// set the form action variable
var MM_editAction = Request.ServerVariables("SCRIPT_NAME");
if (Request.QueryString) {
  MM_editAction += "?" + Server.HTMLEncode(Request.QueryString);
}

// boolean to abort record edit
var MM_abortEdit = false;

// query string to execute
var MM_editQuery = "";
%>
<%
// *** Update Record: set variables

if (String(Request("MM_update")) == "form1" &&
    String(Request("MM_recordId")) != "undefined") {

  var MM_editConnection = MM_conn_STRING;
  var MM_editTable  = "dbo.b01";
  var MM_editColumn = "code";
  var MM_recordId = "'" + Request.Form("MM_recordId") + "'";
  var MM_editRedirectUrl = "";
  var MM_fieldsStr = "b0108|value|b0109|value|b0110|value";
  var MM_columnsStr = "b0108|none,none,NULL|b0109|none,none,NULL|b0110|none,none,NULL";

  // create the MM_fields and MM_columns arrays
  var MM_fields = MM_fieldsStr.split("|");
  var MM_columns = MM_columnsStr.split("|");
  
  // set the form values
  for (var i=0; i+1 < MM_fields.length; i+=2) {
    MM_fields[i+1] = String(Request.Form(MM_fields));
  }

  // append the query string to the redirect URL
  if (MM_editRedirectUrl && Request.QueryString && Request.QueryString.Count > 0) {
    MM_editRedirectUrl += ((MM_editRedirectUrl.indexOf('?') == -1)?"?":"&") + Request.QueryString;
  }
}
%>
<%
// *** Update Record: construct a sql update statement and execute it

if (String(Request("MM_update")) != "undefined" &&
    String(Request("MM_recordId")) != "undefined") {

  // create the sql update statement
  MM_editQuery = "update " + MM_editTable + " set ";
  for (var i=0; i+1 < MM_fields.length; i+=2) {
    var formVal = MM_fields[i+1];
    var MM_typesArray = MM_columns[i+1].split(",");
    var delim =    (MM_typesArray[0] != "none") ? MM_typesArray[0] : "";
    var altVal =   (MM_typesArray[1] != "none") ? MM_typesArray[1] : "";
    var emptyVal = (MM_typesArray[2] != "none") ? MM_typesArray[2] : "";
    if (formVal == "" || formVal == "undefined") {
      formVal = emptyVal;
    } else {
      if (altVal != "") {
        formVal = altVal;
      } else if (delim == "'") { // escape quotes
        formVal = "'" + formVal.replace(/'/g,"''") + "'";
      } else {
        formVal = delim + formVal + delim;
      }
    }
    MM_editQuery += ((i != 0) ? "," : "") + MM_columns + " = " + formVal;
  }
  MM_editQuery += " where " + MM_editColumn + " = " + MM_recordId;

  if (!MM_abortEdit) {
    // execute the update
    var MM_editCmd = Server.CreateObject('ADODB.Command');
    MM_editCmd.ActiveConnection = MM_editConnection;
    MM_editCmd.CommandText = MM_editQuery;
    MM_editCmd.Execute();
    MM_editCmd.ActiveConnection.Close();

    if (MM_editRedirectUrl) {
      Response.Redirect(MM_editRedirectUrl);
    }
  }

}
%>
<%
// 02打开记录集
var R1__MMColParam = "1";
if (String(Session("MM_code")) != "undefined" &&
    String(Session("MM_code")) != "") {
  R1__MMColParam = String(Session("MM_code"));
}
%>
<%
var R1 = Server.CreateObject("ADODB.Recordset");
R1.ActiveConnection = MM_conn_STRING;
R1.Source = "SELECT code, b0102, b0108, b0109, b0110 FROM dbo.b01 WHERE b0104 = '"+ R1__MMColParam.replace(/'/g, "''") + "'";
R1.CursorType = 0;
R1.CursorLocation = 2;
R1.LockType = 1;
R1.Open();
var R1_numRows = 0;
%>

<%
var Repeat1__numRows = -1;
var Repeat1__index = 0;
R1_numRows += Repeat1__numRows;
%>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>修改资金项目</title>
<link href="../../css/style.css" rel="stylesheet" type="text/css" />
</head>

<body>
<!--表单form1,并屏蔽回车-->
<form ACTION="<%=MM_editAction%>" METHOD="POST" name="form1" id="form1" onkeydown=if(event.keycode==13)event.keycode=9>
<!--建立表格-->
  <table width="400" border="1" cellspacing="0" cellpadding="0">
    <tr>
      <td colspan="5"><div align="center">修改资金项目</div></td>
    </tr>
<!--表格重复区域,每条记录一行-->
    <% while ((Repeat1__numRows-- != 0) && (!R1.EOF)) { %>
    <tr>
      <td width="82"><%=(R1.Fields.Item("code").Value)%></td>
      <td width="90"><%=(R1.Fields.Item("b0102").Value)%></td>
        <td width="126"><input name="b0108" type="text" id="b0108" value="<%=(R1.Fields.Item("b0108").Value)%>" size="12" maxlength="12" /></td>
        <td width="79"><input name="b0109" type="text" id="b0109" value="<%=(R1.Fields.Item("b0109").Value)%>" size="12" maxlength="12" /></td>
        <td width="11"><input name="b0110" type="text" id="b0110" value="<%=(R1.Fields.Item("b0110").Value)%>" size="12" maxlength="12" /></td>
    </tr>
    <%
  Repeat1__index++;
  R1.MoveNext();
}
%>

  </table>
  <p>&nbsp;</p>
  <p>
    <input type="submit" name="Submit" value="提交" />
  </p>

  <input type="hidden" name="MM_update" value="form1">
  <input type="hidden" name="MM_recordId" value="<%= R1.Fields.Item("code").Value %>">
</form>
</body>
</h);
%>
<%
R1.Close();
%>
帖子
116
体力
624
威望
0
发表于 2005-12-1 16:56:00 |显示全部楼层
要顶!!!!!!!!!
举世皆浊我独清,众人皆醉我独醒
kk1000 
帖子
404
体力
1489
威望
0
发表于 2005-12-1 20:35:00 |显示全部楼层
写的怎么长还是看的一头的鸟水 我还不明白你要干什么!!!
结交所有作程序的朋友们,小女子一定努力向大家学习
小女子qq:290188915 有事情大家一起讨论(无聊的人请厶加!!)
您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|安久科技提供CDN|blueidea.com ( 京ICP备05002321号 )  

GMT+8, 2012-1-15 00:05 , Processed in 0.267606 second(s), 10 queries , Gzip On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部