主题:  我做的留言本不能插入记录呀,看看~

jesron

职务:普通成员
等级:2
金币:1.0
发贴:393
注册:2001/1/27 0:06:31
#12002/4/22 10:44:58
<%@LANGUAGE="VBSCRIPT"%>

<%
' *** Edit Operations: declare variables

MM_editAction = CStr(Request("URL"))
If (Request.QueryString <> "") Then
MM_editAction = MM_editAction & "?" & 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")) <> "") Then

MM_editConnection = MM_prologin_STRING
MM_editTable = "guestbook"
MM_editRedirectUrl = "addok.html"
MM_fieldsStr = "username|value|email|value|province|value|homepage|value|oicq|value|tel|value|face|value|bbstitle|value|bbscontent|value"
MM_columnsStr = "username|',none,''|email|',none,''|province|',none,''|homepage|',none,''|oicq|',none,''|tel|',none,''|face|',none,''|bbstitle|',none,''|bbscontent|',none,''"

' create the MM_fields and MM_columns arrays
MM_fields = Split(MM_fieldsStr, "|")
MM_columns = Split(MM_columnsStr, "|")

' set the form values
For i = LBound(MM_fields) To UBound(MM_fields) Step 2
MM_fields(i+1) = CStr(Request.Form(MM_fields(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

If (CStr(Request("MM_insert")) <> "") Then

' create the sql insert statement
MM_tablevalues = ""
MM_dbvalues = ""
For i = LBound(MM_fields) To UBound(MM_fields) Step 2
FormVal = MM_fields(i+1)
MM_typeArray = Split(MM_columns(i+1),",")
Delim = MM_typeArray(0)
If (Delim = "none") Then Delim = ""
AltVal = MM_typeArray(1)
If (AltVal = "none") Then AltVal = ""
EmptyVal = MM_typeArray(2)
If (EmptyVal = "none") Then EmptyVal = ""
If (FormVal = "") Then
FormVal = EmptyVal
Else
If (AltVal <> "") Then
FormVal = AltVal
ElseIf (Delim = "'") Then ' escape quotes
FormVal = "'" & Replace(FormVal,"'","''") & "'"
Else
FormVal = Delim + FormVal + Delim
End If
End If
If (i <> LBound(MM_fields)) Then
MM_tablevalues = MM_tablevalues & ","
MM_dbvalues = MM_dbvalues & ","
End if
MM_tablevalues = MM_tablevalues & MM_columns(i)
MM_dbvalues = MM_dbvalues & FormVal
Next
MM_editQuery = "insert into " & MM_editTable & " (" & MM_tablevalues & ") values (" & MM_dbvalues & ")"

If (Not MM_abortEdit) Then
' execute the insert
Set 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 <> "") Then
Response.Redirect(MM_editRedirectUrl)
End If
End If

End If
%>
预览提示信息如下:

本页无法显示
试图访问的网页出现问题,无法显示。

--------------------------------------------------------------------------------

请尝试以下方法:

单击 刷新按钮或者梢候再试。

打开 jesron 主页,然后查找与所需信息相关的链接。
HTTP 500.100 - 内部服务器错误 - ASP 错误
Internet 信息服务

--------------------------------------------------------------------------------

技术信息(适用于支持人员)

错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
/pinshoes/admin/guestbook/add.asp, 第 90 行


浏览器类型:
Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0; DigExt)

页:
POST 167 bytes to /pinshoes/admin/guestbook/add.asp

POST 数据:
username=aaaaaaaaa&email=&province=%B8%A3%BD%A8&homepage=http%3A%2F%2F&oicq=&tel=&face=1.gif&bbstitle=aaaaaaaa&bbscontent=aaaaaaaaaa&Submit=%C8%B7%B6%A8&MM_insert=true

时间:
2002年4月22日, 10:44:23


详细信息:
Microsoft 支持



I''MAD

职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
#22002/4/22 18:32:46
1.数据库的原因:

  在设计数据库时对于数据表、数据表中的字段都要避免使用中文,并且不要使用一些ABScript中的保留字,最好的方法是在名字前加上一个前缀或后缀。还有建立后的数据库使用也会出现错误,一般重新建立数据表或库可以解决(我曾就遇见过这样的事,看看蛮对的数据库就是出错,照样重建就好了);

  2.当页面多次编辑后,光是在服务器行为视窗中删除的行为有时会留下许多Asp残留码,这会导致你页面编辑失败或者测试出错等等。所以有时在编辑后最好多关心源码;

  3.过多的安装了插件有时也会引起UltraDev执行错误。这个错误严重会导致UltraDev崩溃,其实是由于插件作者对于代码没有考虑周全造成的,我曾经遇见过一使用update数据操作就出现将当前页代码增加五倍,最后还是卸除了部分插件解决。所以对于不太使用的插件最好卸除;

  4.在进行UltraDev数据库链接时不要将Access数据库处于设计状态,否则不光会链接出错,当你预览Asp页面也会出错,而要是不太注意,这问题够你忙活的了;

  5.UltraDev4跟几种内存驻留程序会不定时出现冲突,如早期的金山毒霸开着连UltraDev4都打不开了,所以只有尽量少开后台程序了。

  6.在利用UltraDev4制作登录系统中有个用户等级设置,这里的等级名称也千万不要使用中文,否则必定会出错的。

  7.“……javascript error……”最多出现在数据源建立时,通常出现一次错误后,即使你再次正确设置数据源也会报错,最好是重启UltraDev,再不行就重启操作系统,那个用户等级问题我就是这样才解决(对于解决js错误,重装UltraDev甚至重装操作系统也并不鲜见)。

  8.操作系统对于UltraDev使用也会有或多或少的影响。通常使用Windows2000 server版比用Windows 98 +Personal Web SerVer来得好,一来稳定,二来自带IIS5.0不必费心找服务器软件了,而且我发现出错的概率也小很多。

  使用UltraDev4.0的网友最好去升级到4.01,它是Macromedia公司四月份发布的,修改了一些错误,避免了一些常见问题的出现,我网站有下载和升级包的简单说明。

  9.千万不要使用任何UltraDev汉化包。我在UltraDev1.0使用时曾用过汉化包,结果始终出现不明错误,后来就一直不敢用了。在论坛上听说很多网友也有类似情形,所以建议UltraDev用户不使用汉化包。