PDA

View Full Version : Email Webforms


videoprod24
03-13-2006, 02:34 AM
okay, so I just moved over from frontpage to Dreamweaver and I'm liking the flexability a lot more just doing things that are confusing to me get ever harder. I am trying to do a webform for RSVP for a youth group im a webmaster for, and I followed the tutorial on this site for doing a PHP webform, but of course, im on a windows server and godaddy doesnt support PHP on a windows server! Is there another way to do this. I'm not at all good with coding and any suggestions would be greatly appreciated.

gmcrone
03-13-2006, 01:21 PM
Here is an ASP mailform....

<%@language = "VBscript"%>
<%
'Tom Germain's Standard Cgiware Global Variables and set-up
'DO NOT REMOVE THIS SECTION OR NOTHING WILL WORK
Dim strError
Response.Buffer = True
If ScriptEngineMajorVersion < 2 Then
ReportError "Host system needs scripting engine upgrade to use this script"
End If
Set objFM = CreateObject("Scripting.Dictionary")
If IsObject(objFM) = False Then
ReportError "Host system lacks component(s) required by this script"
End If
Set objMailx = CreateObject("CDONTS.Newmail")
If IsObject(objMailx) = False Then
ReportError "Host system lacks component(s) required by this script"
End If
Set objMailx = Nothing
%>
<%
'aspmailer.asp by Tom Germain, Copyright 1998-1999
'Version 1.0
'tg@cgiware.com
'Visit http://www.cgiware.com for latest version, documentation, and other resources
'This is freeware - Use at your own risk. No warranties provided.
%>

<%'variables you can set start here%>
<%
strRcpt = "me@mywebsite.com" 'Put the address you want the form sent to here

strFromVar = "email" 'If you want a reply-to email address to be taken from the form
' put the name of the input item here.

strDefFrom = "mailfeedback@mywebsite.com" 'Put a default, even fake, From address here

strDefSubject = "Form submitted" 'Put the subject of the letter here. If an input item called
'subject exists in the form, its value will be used instead.

strRedirect = "thankyou.htm" 'Url to redirect to after a successful form submission. If an input item called
'redirect exists in the form, its value will be used instead.

%>
<%'variables you can set end here%>

<%
ParseForm
CheckForm
If Len(strError) > 0 Then
ReportError strError
End If
strOutX = SeqForm
If Len(strOutX) < 1 Then
strOutX = FormToString
End If
If Len(strOutX) < 1 Then
ReportError "Submitted form is empty"
End If
strSubject = strDefSubject
If objFM.Exists("TGsubject") Then
strSubject = objFM.Item("TGsubject")
End If
strFrom = strDefFrom
If Len(strFromVar) > 0 Then
If objFM.Exists(strFromVar) Then strFrom = objFM.Item(strFromVar) End If
End If
SendMail strFrom,strRcpt,strSubject,strOutX
If Len(strRedirect) > 0 Then
Response.redirect(strRedirect)
Response.End
End If
If objFM.Exists("TGredirect") = True Then
If Len(objFM.Item("TGredirect")) > 0 Then
Response.redirect(objFM.Item("TGredirect"))
Response.End
End If
End If
%>



<h1>Form Sent!</h1>
Your request has been received and will be processed shortly.



<%
Credit
Response.End
%>
<%
Function IsValidEmail(Email)
Dim Temp,Temp2
strNotValid = "
Email address not valid"
strTooLong = "
Email address too long"
If Len(Email) > 100 Then
ReportError strTooLong
End If
Email = LCase(Email)
Temp = Split(Email,"@",2,1)
If UBound(Temp) < 1 Then
ReportError strNotValid
End If
Temp2 = Split(Temp(1),".",-1,1)
If UBound(Temp2) < 1 Then
ReportError strNotValid
End If
End Function
%>
<%
Function SendMail(From,Rcpt,Subject,Body)
Trim(From)
Trim(Rcpt)
If Len(From) < 1 Then
ReportError strError & "
No Reply-to address (From) for this letter"
End If
If Len(Rcpt) < 1 Then
ReportError strError & "
No recipient for this letter"
End If
IsValidEmail Rcpt
IsValidEmail From
Set objMailer = CreateObject("CDONTS.Newmail")
objMailer.From = From
objMailer.To = Rcpt
objMailer.Subject = Subject
objMailer.Body = Body
objMailer.Send
Set objMailer = Nothing
End Function
%>
<%
Function CheckForm()
Dim Temp,strTmp,strForce
strInputReq = "
Input required for "
If objFM.Exists("TGrequire") = False Then
Exit Function
ElseIf isEmpty(objFM.Item("TGrequire")) Then
Exit Function
End If
strForce = objFM.Item("TGrequire")
Temp = Split(strForce,",",-1,1)
For Each strTmp in Temp
If objFM.Exists(strTmp) = False Then
strError = strError & strInputReq & strTmp
ElseIf Len(objFM.Item(strTmp)) < 1 Then
strError = strError & strInputReq & strTmp
End If
Next
End Function
%>
<%
Function ParseForm()
For Each Item in Request.Form
If objFM.Exists(Item) Then
objFM.Item(Item) = objFM.Item(Item) & "," & Request.QueryString(Item)
Else
objFM.Add Item,Request.Form(Item)
End If
Next
For Each Item in Request.QueryString
If objFM.Exists(Item) Then
objFM.Item(Item) = objFM.Item(Item) & "," & Request.QueryString(Item)
Else
objFM.Add Item,Request.QueryString(Item)
End If
Next
End Function
%>
<%
Function SeqForm()
Dim Temp,strTmp,strOrder,strOut
If objFM.Exists("TGorder") = False Then
Exit Function
ElseIf isEmpty(objFM.Item("TGorder")) Then
Exit Function
End If
strOrder = objFM.Item("TGorder")
Temp = Split(strOrder,",",-1,1)
For Each strTmp in Temp
If objFM.Exists(strTmp) Then
strOut = strOut & strTmp & "=" & objFM.Item(strTmp) & Chr(10)
End If
Next
SeqForm = strOut
End Function
%>
<%
Function FormToString()
Dim strOut
strKeys = objFM.Keys
strValues = objFM.Items
For intCnt = 0 To objFM.Count -1
strOut = strOut & strKeys(intCnt) & "=" & strValues(intCnt) & Chr(10)
Next
FormToString = strOut
End Function
%>
<%
Function ReportError(strMess)
If Len(strMess) < 1 Then
strMess = strError
End If
strErr = "The following error(s) happened:
" & strMess
Response.Clear
%>



<h1>Error!</h1>


<%'Error messages will be output here, between your html%>
<%
Response.Write(strErr)
%>





Click on you browser's Back button to correct any mistakes in your input
</p>



<%
Credit
Response.End
End Function
%>

<%Function Credit%>

<p align=center>
<font face="Arial,Helvetica" size=1>
Mailer software is freeware by
CGIware (http://www.cgiware.com/)
http://www.cgiware.com/powered.gif (http://www.cgiware.com/)
</font>
</p>

<%End Function%>


Mike...