BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / database / #1838同步于 2008/1/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Database机器人发帖

access与asp 可更新的查询~

aisoggy
2008/1/10镜像同步8 回复
发信人: aisoggy (齐鲁大地/677&踩雷小分队队长), 信区: WWWTechnology 标 题: [求助]asp+access可更新查询的问题~ 发信站: 北邮人论坛 (Fri Jan 11 02:42:01 2008), 站内 asp与access是通过DNS连接的, 点击提交按钮时出现了如下错误,什么问题? HTTP 错误 500.100 - 内部服务器错误 - ASP 错误 Internet 信息服务 -------------------------------------------------------------------------------- 技术信息(用于支持人员) 错误类型: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询。 /write.asp, 第 115 行 浏览器类型: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322) 网页: POST 91 ??? /write.asp POST Data: name=677&qq=573547908&mail=aisoggy@sina.com&textarea=aa&Submit=%CC%E1%BD%BB&MM_insert=form1 时间: 2008年1月11日, 2:37:55 详细信息: Microsoft 支持
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
fbsd机器人#1 · 2008/1/11
贴代码 【 在 aisoggy (齐鲁大地/677&踩雷小分队队长) 的大作中提到: 】 : 发信人: aisoggy (齐鲁大地/677&踩雷小分队队长), 信区: WWWTechnology : 标 题: [求助]asp+access可更新查询的问题~ : 发信站: 北邮人论坛 (Fri Jan 11 02:42:01 2008), 站内 : ...................
chit机器人#2 · 2008/1/11
现在很流行这句话 呵呵 【 在 fbsd (烈火) 的大作中提到: 】 : 贴代码
aisoggy机器人#3 · 2008/1/11
【 在 fbsd 的大作中提到: 】 : 贴代码 我是 用dreamweaver8编写的,自动生成的代码。。。 这个要贴吗? 是不是我应该新建一个连接,
fbsd机器人#4 · 2008/1/11
write.asp相关代码啊 【 在 aisoggy (齐鲁大地/677&踩雷小分队队长) 的大作中提到: 】 : 我是 用dreamweaver8编写的,自动生成的代码。。。 : 这个要贴吗? : 是不是我应该新建一个连接, : ...................
aisoggy机器人#5 · 2008/1/11
write.asp <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <!--#include file="Connections/liuyb.asp" --> <% ' *** Edit Operations: declare variables Dim MM_editAction Dim MM_abortEdit Dim MM_editQuery Dim MM_editCmd Dim MM_editConnection Dim MM_editTable Dim MM_editRedirectUrl Dim MM_editColumn Dim MM_recordId Dim MM_fieldsStr Dim MM_columnsStr Dim MM_fields Dim MM_columns Dim MM_typeArray Dim MM_formVal Dim MM_delim Dim MM_altVal Dim MM_emptyVal Dim MM_i MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME")) If (Request.QueryString <> "") Then MM_editAction = MM_editAction & "?" & Server.HTMLEncode(Request.QueryString) End If ' boolean to abort record edit MM_abortEdit = false ' query string to execute MM_editQuery = "" %> <% ' *** Insert Record: set variables If (CStr(Request("MM_insert")) = "form1") Then MM_editConnection = MM_liuyb_STRING MM_editTable = "yonghu" MM_editRedirectUrl = "" MM_fieldsStr = "name|value|qq|value|mail|value|textarea|value" MM_columnsStr = "y_name|',none,''|y_qq|',none,''|y_email|',none,''|y_liuyan|',none,''" ' create the MM_fields and MM_columns arrays MM_fields = Split(MM_fieldsStr, "|") MM_columns = Split(MM_columnsStr, "|") ' set the form values For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2 MM_fields(MM_i+1) = CStr(Request.Form(MM_fields(MM_i))) Next ' append the query string to the redirect URL If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString Else MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString End If End If End If %> <% ' *** Insert Record: construct a sql insert statement and execute it Dim MM_tableValues Dim MM_dbValues If (CStr(Request("MM_insert")) <> "") Then ' create the sql insert statement MM_tableValues = "" MM_dbValues = "" For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2 MM_formVal = MM_fields(MM_i+1) MM_typeArray = Split(MM_columns(MM_i+1),",") MM_delim = MM_typeArray(0) If (MM_delim = "none") Then MM_delim = "" MM_altVal = MM_typeArray(1) If (MM_altVal = "none") Then MM_altVal = "" MM_emptyVal = MM_typeArray(2) If (MM_emptyVal = "none") Then MM_emptyVal = "" If (MM_formVal = "") Then MM_formVal = MM_emptyVal Else If (MM_altVal <> "") Then MM_formVal = MM_altVal ElseIf (MM_delim = "'") Then ' escape quotes MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'" Else MM_formVal = MM_delim + MM_formVal + MM_delim End If End If If (MM_i <> LBound(MM_fields)) Then MM_tableValues = MM_tableValues & "," MM_dbValues = MM_dbValues & "," End If MM_tableValues = MM_tableValues & MM_columns(MM_i) MM_dbValues = MM_dbValues & MM_formVal Next MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")" If (Not MM_abortEdit) Then ' execute the insert Set MM_editrs = Server.CreateObject("ADODB.recordset") MM_editrs.open MM_editQuery,MM_editConnection,1,3 If (MM_editRedirectUrl <> "") Then Response.Redirect(MM_editRedirectUrl) End If End If End If %> <!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> <script type="text/JavaScript"> <!-- function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function MM_validateForm() { //v4.0 var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments; for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]); if (val) { nm=val.name; if ((val=val.value)!="") { if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@'); if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n'; } else if (test!='R') { num = parseFloat(val); if (isNaN(val)) errors+='- '+nm+' must contain a number.\n'; if (test.indexOf('inRange') != -1) { p=test.indexOf(':'); min=test.substring(8,p); max=test.substring(p+1); if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n'; } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; } } if (errors) alert('The following error(s) occurred:\n'+errors); document.MM_returnValue = (errors == ''); } //--> </script> </head> <body> <form action="<%=MM_editAction%>" method="POST" name="form1" id="form1" onsubmit="MM_validateForm('name','','R','qq','','NisNum','mail','','RisEmail','textarea','','R');return document.MM_returnValue"> <table width="1021" border="0"> <tr> <td width="190">姓名:</td> <td width="821"><label> <input name="name" type="text" id="name" /> </label></td> </tr> <tr> <td>QQ:</td> <td><label> <input name="qq" type="text" id="qq" /> </label></td> </tr> <tr> <td>E-mail:</td> <td><label> <input name="mail" type="text" id="mail" /> </label></td> </tr> <tr> <td>留言内容</td> <td><label> <textarea name="textarea" cols="66" rows="5"></textarea> </label></td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td colspan="2"><label> <div align="center"> <input type="submit" name="Submit" value="提交" /> <input type="reset" name="Submit2" value="重置" /> </div> </label> <label> <div align="center"></div> </label></td> </tr> </table> <input type="hidden" name="MM_insert" value="form1"> </form> </body> </html>
aisoggy机器人#6 · 2008/1/11
连接文件 liuyb.asp <% cnstr="driver={microsoft access driver (*.mdb)};dbq="&server.mappath("data/liuyanban_data.mdb") set MM_editConnection=server.createobject("adodb.connection") MM_editConnection.open cnstr %>
aisoggy机器人#7 · 2008/1/11
经过修改后,错误如下: 技术信息(用于支持人员) 错误类型: ADODB.Recordset (0x800A0BB9) 参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。 /write.asp, 第 113 行 浏览器类型: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322) 网页: POST 101 ??? /write.asp POST Data: name=677&qq=573547908&mail=aisoggy@sina.com&textarea=%B0%A1%B0%A1&Submit=%CC%E1%BD%BB&MM_insert=form1 时间: 2008年1月11日, 16:27:19
fbsd机器人#8 · 2008/1/11
检查一下你的数据库,类型是int的不能插入字符串。 【 在 aisoggy (齐鲁大地/677&踩雷小分队队长) 的大作中提到: 】 : 经过修改后,错误如下: : 技术信息(用于支持人员) : 错误类型: : ...................