PDA

View Full Version : CDO & Option Explicit error


SAS
07-27-2006, 04:47 PM
Hi

My forms currently are set up using CDONTS to send a mail and submit to an Access Database. I understand this is going to be depreceated so I've been trying to change them to CDO.

I can get the form to work fine if I just want to send to an email using CDO but when I connect it to a database as well I get

Microsoft VBScript compilation error '800a0400'

Expected statement

Software2.asp, line 74

Option Explicit
^

So I've looked around and also tried

<%@ Language="VBScript" %>
<% Option Explicit %>
<%


then it comes up with the following although it is on the first line

Active Server Pages error 'ASP 0140'

Page Command Out Of Order

Software2.asp, line 74

The @ command must be the first command within the Active Server Page.

I remove the cdo script and the form works fine to a database so I don't think the problem is there.

Script is in the attached

Any help would be absolutely great
Cheers Shona

SAS
08-02-2006, 08:18 AM
Hi

I think I'm nearly there and have now changed some of the scripting. I now get the information to go to the database and the mail arrives with the field names but not the information that was typed into the fields !

Do hope you can help?


<!--
METADATA
TYPE="typelib"
UUID="CD000000-8B95-11D1-82DB-00C04FB1625D"
NAME="CDO for Windows 2000 Library"
-->

<%


Dim sTextBody
Dim sName



Set cdoConfig = CreateObject("CDO.Configuration")


sTextBody = sTextBody & "Name: " & Request("sName") & VbCrLf



With cdoConfig.Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
.Item(cdoSMTPServer) = "smtp.server.name"
.Update
End With



Dim objMail
'Create the mail object
Set objMail = Server.CreateObject("CDO.Message")
'Set key properties
objMail.From = email@aol.com
objMail.To = "email@aol.com"
objMail.Subject = "Software Required"
objMail.TextBody = sTextBody


objMail.Send



' End If

Set cdoMessage = Nothing
Set cdoConfig = Nothing
%>


<%
' FP_ASP ASP Automatically generated by a FrontPage Component. Do not Edit.

On Error Resume Next
Session("FP_OldCodePage") = Session.CodePage
Session("FP_OldLCID") = Session.LCID
Session.CodePage = 1252
Err.Clear

strErrorUrl = ""

If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
If Request.Form("VTI-GROUP") = "0" Then
Err.Clear

Set fp_conn = Server.CreateObject("ADODB.Connection")
FP_DumpError strErrorUrl, "Cannot create connection"

Set fp_rs = Server.CreateObject("ADODB.Recordset")
FP_DumpError strErrorUrl, "Cannot create record set"

fp_conn.Open Application("Name_ConnectionString")
FP_DumpError strErrorUrl, "Cannot open database"

fp_rs.Open "Results", fp_conn, 1, 3, 2 ' adOpenKeySet, adLockOptimistic, adCmdTable
FP_DumpError strErrorUrl, "Cannot open record set"

fp_rs.AddNew
FP_DumpError strErrorUrl, "Cannot add new record set to the database"
Dim arFormFields0(8)
Dim arFormDBFields0(8)
Dim arFormValues0(8)


arFormFields0(4) = "sName"
arFormDBFields0(4) = "sName"
arFormValues0(4) = Request("sName")


FP_SaveFormFields fp_rs, arFormFields0, arFormDBFields0


fp_rs.Update
FP_DumpError strErrorUrl, "Cannot update the database"

fp_rs.Close
fp_conn.Close

FP_FormConfirmation "text/html; charset=windows-1252",_
"Form Confirmation",_
"Thank you for submitting the following information:",_
"sendmail1.asp",_
"Return to the form."

End If
End If

Session.CodePage = Session("FP_OldCodePage")
Session.LCID = Session("FP_OldLCID")

%>

Thanks Shona