Quote:
Originally Posted by exally first of all, in the future please use code tags. secondly. Instead of having the message length as the determining factor use a simple bool, true or false, and set it if it doesn't work. also I believe you don't require exit();
In saying that where u have validate(this) in the form declaration, it might help if u changed it to formCheck(this). |
THANKS A BUNCH, from your advise I finally got it too work but I have to use the message length for this design. But now I wrote my cookies but I'm having trouble with these as well. Here is what I have so far, I'm definitely not good with cookies far from it, so please some simple language on this one....You fellows are the CODE WARRIORS, I call upon your help!!!!
<script language="javascript">
<!--
function formCheck(formobj){
var fieldRequired = Array("FirstName", "LastName","eMail Address");
var fieldDescription = Array("First Name", "Last Name","eMail");
// Below is my error message
var alertMsg = "Please complete these fields:\n";
var l_Msg = alertMsg.length;
for (var i = 0; i < fieldRequired.length; i++){
var obj = formobj.elements[fieldRequired[i]];
if (obj){
switch(obj.type){
case "select-one":
if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
alertMsg += " - " + fieldDescription[i] + "\n";
}
break;
case "text":
case "textarea":
if (obj.value == "" || obj.value == null){
alertMsg += " - " + fieldDescription[i] + "\n";
}
break;
default:
}
if (obj.type == undefined){
var blnchecked = false;
for (var j = 0; j < obj.length; j++){
if (obj[j].checked){
blnchecked = true;
}
}
if (!blnchecked){
alertMsg += " - " + fieldDescription[i] + "\n";
}
}
}
}
if (alertMsg.length == l_Msg){
return true;
}else{
alert(alertMsg);
return false;
}
}
var count=0;
function validate(frm)
{
//call function for validating, if ny field is empty
formCheck(frm);
//number of days for which the cookie is valid, here it is set to 99 days, may be changed by changin the value
var days=99;
var obj=frm.elements["eMail Address"];
var expires = new Date ();
expires.setTime(expires.getTime() + days * (24 * 60 * 60 * 1000));
if(obj.value==readCookie())
{
alert("Submission not allowed, the person has already filled form previously.The e-mail id is same!!");
count=0;
}
else
{
SetCookie(obj.value,expires);
//alert(readCookie());
count++;
}
}
function eraseCookie(name)
{
SetCookie( "", -1);
}
//function for reading cookie
function readCookie()
{
var ca = document.cookie.split(';');
var nameEQ = "TotalSubmissions" + "=";
for(var i=0; i < ca.length; i++)
{
var c = ca[i];
while (c.charAt(0)==' ')
c = c.substring(1, c.length);
//delete spaces
if (c.indexOf(nameEQ) == 0)
return c.substring(nameEQ.length, c.length);
}
return null;
}
//setting up cookie
function SetCookie(cookieData, expireDate)
{
document.cookie = "TotalSubmissions" + "=" + escape(cookieData) + "; expires=" + expireDate.toGMTString();
}
function GetCookie(name)
{
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return GetCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function redirect()
{
if(!count)
location.href = 'Confirm.html';
else
location.href = 'Error.html';
}
//-->
</SCRIPT>
</head>
<body>
<body bgcolor="#000110"></body>
<center><table width="850" bgcolor="#c69b96"></center>
<tr>
<td>
<H1>Kudler Mailing list</H1><!-- Header #1 -->
<H3>In order to recieve online coupons please fill out the form below.</H3>
<hr size="10" width="100%" noshade>
<form name="Customer" onsubmit="return formCheck(this);" form action="javascript
:redirect();"><!-- Form action -->
First Name:<br> <INPUT size=35 name=FirstName><br>
Last Name:<br> <INPUT size=35 name=LastName><br>
Address:<br> <INPUT size=35 name=Address><br>
City:<br> <INPUT size=35 name=City><br>
State: <br>
<select name="States">
<option value="" SELECTED></option><!-- You select the state you reside in -->
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="DC">District Of Columbia</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
</select><br>
Zip: <br><INPUT size=35 name=Zip><br>
Home Phone: <br><INPUT size=35 name="HomePhone"><br>
eMail Address: <br><INPUT size=35 name="eMail Address"><br>
<hr size="10" width="100%" noshade>
<INPUT type=submit value="Submit Form"> <!-- The two buttons at bottom of page -->
<INPUT type=reset value="Clear Fields" name=clear><br><br>
</td>
</tr>
</table>
</body>
</html>