Forms sending some blank emails

L

lstanikmas

Hi, I'm validating a form with this ASP but receiving some blank email
responses; does anyone see anything wrong with it?:

function isFormVarExcluded(thisForm, strToCheck)
{
var strExcludeVars = thisForm.elements["$excludevars"].value;
var arrExcludeVars = strExcludeVars.split(",");
for (var j=0; j<arrExcludeVars.length; j++)
{
if (arrExcludeVars[j] == strToCheck) return true;
}
return false;
}

function getFormVars(thisForm)
{
var oFormVars = thisForm.elements["$formvars"];
var strPrevVal = "";
oFormVars.value = "";
for (var x=0,objElem=null; objElem=thisForm.elements.item(x); x++)
{
if (!isFormVarExcluded(thisForm, objElem.name))
{
if (objElem.name != strPrevVal)
oFormVars.value += objElem.name + ",";
}
strPrevVal = objElem.name;
}
oFormVars.value = oFormVars.value.substr(0,oFormVars.value.length-1);
}
 
B

Bob Milutinovic

Hi, I'm validating a form with this ASP but receiving some blank email
responses; does anyone see anything wrong with it?:

function isFormVarExcluded(thisForm, strToCheck)
{
var strExcludeVars = thisForm.elements["$excludevars"].value;
var arrExcludeVars = strExcludeVars.split(",");
for (var j=0; j<arrExcludeVars.length; j++)
{
if (arrExcludeVars[j] == strToCheck) return true;
}
return false;
}

function getFormVars(thisForm)
{
var oFormVars = thisForm.elements["$formvars"];
var strPrevVal = "";
oFormVars.value = "";
for (var x=0,objElem=null; objElem=thisForm.elements.item(x); x++)
{
if (!isFormVarExcluded(thisForm, objElem.name))
{
if (objElem.name != strPrevVal)
oFormVars.value += objElem.name + ",";
}
strPrevVal = objElem.name;
}
oFormVars.value = oFormVars.value.substr(0,oFormVars.value.length-1);
}

I may as well ask the obvious; is this script on the server or the client?

There isn't anything in your supplied code relating directly to the sending
of e-mails (nor for that matter relating explicitly to server-side code).

How are you sending them? Have you tested for existence of content in the
relevant string(s) immediately prior to sending?

- Bob.
 
L

lstanikmas

Hi, I'm validating a form with this ASP but receiving some blank email
responses; does anyone  see anything wrong with it?:
function isFormVarExcluded(thisForm, strToCheck)
{
var strExcludeVars = thisForm.elements["$excludevars"].value;
var arrExcludeVars = strExcludeVars.split(",");
for (var j=0; j<arrExcludeVars.length; j++)
{
if (arrExcludeVars[j] == strToCheck) return true;
}
return false;
}
function getFormVars(thisForm)
{
var oFormVars = thisForm.elements["$formvars"];
var strPrevVal = "";
oFormVars.value = "";
for (var x=0,objElem=null; objElem=thisForm.elements.item(x); x++)
{
if (!isFormVarExcluded(thisForm, objElem.name))
{
if (objElem.name != strPrevVal)
oFormVars.value += objElem.name   + ",";
}
strPrevVal = objElem.name;
}
oFormVars.value = oFormVars.value.substr(0,oFormVars.value.length-1);
}

I may as well ask the obvious; is this script on the server or the client?

There isn't anything in your supplied code relating directly to the sending
of e-mails (nor for that matter relating explicitly to server-side code).

How are you sending them? Have you tested for existence of content in the
relevant string(s) immediately prior to sending?

- Bob.- Hide quoted text -

- Show quoted text -

This is on the server. I didn't create it but it looks like a
validator script. The emails I receive (form responses) sometimes have
only []: in the body but some come in filled out properly (contact
info, product interest, etc.). There's also a validator in the HTML
form page:

<script language="javascript" type="text/javascript">
<!--
function MM_validateForm() { //v4.0
if (document.getElementById){
var
i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2];
val=document.getElementById(args);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain
an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a
number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is
required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
} }
//-->
</script>

Then there's this in the form tag:

<form action="../../scripts/handleInfoRequest.asp" method="post"
name="info_request"
onSubmit="getFormVars(document.info_request);MM_validateForm('name','','R','phone','','R','email','','RisEmail','state','','R');return
document.MM_returnValue">

which refers to this on the server:

<%@LANGUAGE = "JScript"%>
<%

function showError(description)
{
%>
<html>
<body>
<p>
ERROR: <%=description%>
</p>
</body>
</html>
<%
}

function showHelp()
{
%>
<html>
<body>
Available Parameters: toemail, fromemail, subject, content,
redirectto
</body>
</html>
<%
}

function getFormDataAsMsg(bUseHTML)
{
var dt = new Date();
var crlf = "\r\n";
if (bUseHTML) crlf = "<br>"

var strMailMsg = (dt.getMonth()+1) + "/" + dt.getDate() + "/" +
dt.getFullYear() +crlf;

var arrFormVars = new String(Request.Form("$formvars")).split(",");
for (i=0; i<arrFormVars.length; i++)
{
itemVal = new String(Request.Form(arrFormVars));
if (bUseHTML)
{
if (itemVal != "undefined")
strMailMsg += "<b>[" + arrFormVars + "]</b>:&nbsp;" + itemVal +
crlf;
else
strMailMsg += "<b>[" + arrFormVars + "]</b>:&nbsp;" + crlf;
}
else
{
if (itemVal != "undefined")
strMailMsg += "[" + arrFormVars + "]: " + itemVal + crlf;
else
strMailMsg += "[" + arrFormVars + "]: " + crlf;
}
}
return strMailMsg;
}

function getFormDataAsCSV()

{
var strCSVLine = "";
var arrFormVars = new String(Request.Form("$formvars")).split(",");
for (i=0; i<arrFormVars.length; i++)
{
var itemVal = new String(Request.Form(arrFormVars));
if (itemVal != "undefined")
{
var re1 = /\"/g;
var re2 = /\r\n/g;
var re3 = /\n/g;
strCSVLine += "\"" + itemVal.replace(re1, "'").replace(re2, "
").replace(re3, " ") + "\"";
}
else
strCSVLine += "\"\"";
if (i<arrFormVars.length-1) strCSVLine += ",";
}
return strCSVLine;
}


function appendToFile(strFileName, strContent)
{
if (strFileName == '' || strFileName == undefined) strFileName =
"default.txt";
strFileName = "d:/Web/WebDB/" + strFileName;

fs = new ActiveXObject("Scripting.FileSystemObject");

var bIsNewFile = false;
if (fs.FileExists(strFileName))
f = fs.GetFile(strFileName);
else
{
bIsNewFile = true;
fs.CreateTextFile(strFileName);
f = fs.GetFile(strFileName);
}

ts = f.OpenAsTextStream("8", "-2");
if (bIsNewFile)
{
ts.WriteLine(new String(Request.Form("$formvars")));
}
ts.WriteLine(strContent);
ts.Close( );
}

function sendMail(fromemail, toemail, subject, content)
{
var msg = new ActiveXObject("CDO.Message");
msg.From = fromemail;
msg.To = toemail;
msg.Subject = subject;
msg.TextBody = content;

Response.Write("*" + toemail);

msg.Configuration.Fields("http://schemas.microsoft.com/cdo/
configuration/smtpserver") = "10.0.4.9";
msg.Configuration.Fields("http://schemas.microsoft.com/cdo/
configuration/sendusing") = 2;
msg.Configuration.Fields.Update();
try
{
msg.Send();
}
catch(e)
{
showError("CDO.Message.Send() failed: " + e.description);
return false;
}
return true;
}

var strSubject = new String(Request.Form("$subject"));
var strToEmail = new String(Request.Form("$toemail"));
var strRedirectURL = new String(Request.Form("$redirectto"));
var strFileName = new String(Request.Form("$saveas"));

appendToFile(strFileName, getFormDataAsCSV());
if (sendMail("(e-mail address removed)", strToEmail, strSubject,
getFormDataAsMsg(false)))
Response.Redirect(strRedirectURL);
%>

Someone said it's a SPAM problem, but IT says there's no indication of
a SPAM problem in the headers of the blank emails.

Thanks much
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top