Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations bkrike on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Stopping variables from being passed after insert record page 1

Status
Not open for further replies.

raniweb

Technical User
Apr 26, 2004
66
US
Hello,
I am trying to stop a variable from being passed after an insert record page. In all I have three pages.
First page: user selects an event and the event id is passed through the URL using the Go to Detail page behavior.
Second Page: An insert record page. The event id from the URL is filtered so the the event displays in the form, the user fills out the form and clicks submit. The record with the event id is then inserted into the database.
Third page: The Thank you page. The insert record behavior goes to the thank you page after the form is submitted.
Problem, the event id is still in the URL after clicking submit on the second/insert page and I get a "Page cannot be displayed error" for the thank you page.
I'm working with an Access database and an ASP/VBscript pages. Any help would be so very much appreciated. Thank you all in advance!
 
having a querystring still in the url will make no difference to a receiving page, unless the page is retrieving the querystring and trying to redirect based on it.

it sounds more likely there is an error in some code.

uncheck friendly errors to see the actual error message.



Chris.

Indifference will be the downfall of mankind, but who cares?
A website that proves the cobblers kids adage.
Nightclub counting systems

So long, and thanks for all the fish.
 
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_campusvisit_STRING
MM_editTable = "reservation"
MM_editRedirectUrl = " MM_fieldsStr = "fname|value|lname|value|eventid|value|streetaddress|value|City|value|state|value|Zip|value|Phone|value|Email|value|highschool|value|gradyr|value|majorid|value|stnames|value|parentsnames|value|Commentsquestions|value|overnight|value"
MM_columnsStr = "fname|',none,''|lname|',none,''|eventid|none,none,NULL|streetaddress|',none,''|City|',none,''|state|',none,''|Zip|',none,''|Phone|',none,''|Email|',none,''|highschool|',none,''|gradyr|',none,''|majorid|none,none,NULL|stnames|',none,''|parentsnames|',none,''|Commentsquestions|',none,''|overnight|',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_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
%>
<%
Dim reservations
Dim reservations_numRows

Set reservations = Server.CreateObject("ADODB.Recordset")
reservations.ActiveConnection = MM_campusvisit_STRING
reservations.Source = "SELECT * FROM reservation"
reservations.CursorType = 0
reservations.CursorLocation = 2
reservations.LockType = 1
reservations.Open()

reservations_numRows = 0
%>
<%
Dim events__MMColParam
events__MMColParam = "1"
If (Request.Form("eventid") <> "") Then
events__MMColParam = Request.Form("eventid")
End If
%>
<%
Dim events
Dim events_numRows

Set events = Server.CreateObject("ADODB.Recordset")
events.ActiveConnection = MM_campusvisit_STRING
events.Source = "SELECT * FROM admissioneventsq WHERE eventid = " + Replace(events__MMColParam, "'", "''") + ""
events.CursorType = 0
events.CursorLocation = 2
events.LockType = 1
events.Open()

events_numRows = 0
%>
<%
Dim states
Dim states_numRows

Set states = Server.CreateObject("ADODB.Recordset")
states.ActiveConnection = MM_campusvisit_STRING
states.Source = "SELECT * FROM states ORDER BY Abbrev ASC"
states.CursorType = 0
states.CursorLocation = 2
states.LockType = 1
states.Open()

states_numRows = 0
%>
<%
Dim majors
Dim majors_numRows

Set majors = Server.CreateObject("ADODB.Recordset")
majors.ActiveConnection = MM_campusvisit_STRING
majors.Source = "SELECT * FROM AreaInterest ORDER BY area ASC"
majors.CursorType = 0
majors.CursorLocation = 2
majors.LockType = 1
majors.Open()

majors_numRows = 0
%>

Here's the form action line of code.
<form method="POST" action="<%=MM_editAction%>" name="form1">
Thank you all!
 
Looks like this is where the insert takes place:
Code:
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
Try changing this:
Code:
If (MM_editRedirectUrl <> "") Then
      Response.Redirect(MM_editRedirectUrl)
    End If
To this:
Code:
If (MM_editRedirectUrl <> "") Then
      Response.Redirect([b]"YourThankYouPage.asp"[/b])
    End If
 
It worked without a flaw. Thank you very much! I really appreciate your help!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top