Forums

This topic is locked

Insert into SQL Server Problem

Posted 28 Oct 2002 20:39:54
1
has voted
28 Oct 2002 20:39:54 Michael Bennett posted:
I am using UltraDev 4 and have a form inserting into SQL Server 2000. Everything works great, except from certain machines it creates like 3 or 4 records. Testing from my machine and making sure I only clicked the submit once it still produced 3 records. Any help would be much appreciated. Thanks.

Replies

Replied 28 Oct 2002 21:27:04
28 Oct 2002 21:27:04 Owen Eastwick replied:
Your going to have to give us more to go on than that, how about pasting up your code.

Regards

Owen.

Multiple Parameter UD4 / Access 2000 Database Search Tutorial:
www.tdsf.co.uk/tdsfdemo
Replied 28 Oct 2002 21:53:19
28 Oct 2002 21:53:19 Michael Bennett replied:
Here's the code:

<%@LANGUAGE="VBSCRIPT"%>
<!--#include virtual="/Connections/connDWS.asp" -->
<%
' *** 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_connDWS_STRING
MM_editTable = "dbDigitalWorkspace.dbo.tblUserSignup"
MM_editRedirectUrl = "process.asp"
MM_fieldsStr = "lab|value|acctnum|value|name|value|date|value"
MM_columnsStr = "svLab|',none,''|intCustomerNumber|none,none,NULL|svName|',none,''|dtDateSignuo|',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
%>
<%
Response.Cookies("lab" = Request.Form("lab"
Response.Cookies("lab".Expires = Date + 365

Response.Cookies("acctnum" = Request.Form("acctnum"
Response.Cookies("acctnum".Expires = Date + 365
%>
<%
' *** 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
%>

Reply to this topic