# Header thankyou.html php not working



## sierragirl78 (Apr 30, 2013)

I just implemented a well established contact script onto our website.
Link to the script
Our website's contact page
and for some reason, the script that sends you to the thank you page (thankyou.html) is not working.

```
if(isset($_POST['submit']))
{
    
    $name = $_POST['name'];
    $visitor_email = $_POST['email'];
    $phone = $_POST['phone'];
    $user_message = $_POST['message'];
    ///------------Do Validations-------------
    if(empty($name)||empty($visitor_email))
    {
        $errors .= "\n Name Email and Phone are required fields. ";    
    }
    if(IsInjected($visitor_email))
    {
        $errors .= "\n Bad email value!";
    }
    if(empty($_SESSION['6_letters_code'] ) ||
      strcasecmp($_SESSION['6_letters_code'], $_POST['6_letters_code']) != 0)
    {
    //Note: the captcha code is compared case insensitively.
    //if you want case sensitive match, update the check above to
    // strcmp()
        $errors .= "\n The captcha code does not match!";
    }
    
    if(empty($errors))
    {
        //send the email
        $to = $your_email;
        $subject="Rippedsheets Form Submission";
        $from = $your_email;
        $ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : '';
        
        $body = "A user  $name submitted the contact form:\n".
        "Name: $name\n".
        "Email: $visitor_email \n".
        "Email: $phone \n".
        "Message: \n ".
        "$user_message\n".
        "IP: $ip\n";    
        
        $headers = "From: $from \r\n";
        $headers .= "Reply-To: $visitor_email \r\n";
        
        mail($to, $subject, $body,$headers);
        
        header('Location: thankyou.html');
    }
}
```
Please help if you can, thank you!


----------



## Fjandr (Sep 26, 2012)

Is your web host set up to parse pages with the html extension for PHP code? If not, you either need to add the html file type to .htaccess so that they're parsed, or you need to change the extension to .php.


----------



## sierragirl78 (Apr 30, 2013)

Yes, it is. We have attempted this as contact.html and contact.php.
Thanks


----------



## Fjandr (Sep 26, 2012)

Would you be willing to post the entire code from the contact page (replace any sensitive content with filler if necessary), as well as your modified copy of the contact form script (redact the contact address)? Otherwise I'm at a loss as to what's causing your issue, as I set up a copy of the script and it worked flawlessly. I don't see anything in the portion of code you posted that would cause the redirect to fail, so unless I'm missing something there the problem lies elsewhere.


----------



## sierragirl78 (Apr 30, 2013)

I apologize, I was called away before I could message you back yesterday.

Contact Page:

```
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />




<link rel=stylesheet href="labels.css" type="text/css">


<title>Contact rippedsheets.com at 509-588-5080 for custom labels and tags</title>


<meta name="description"
content="Contact information for custom die cut laser and inkjet labels, tags, cards, magnets, stickers, and wristbands">



<meta name="keywords" content="color,laser,and,inkjet,labels"><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

<style type="text/css">




.style1 {color: #000000}
.style2 {color: #990000}
.style3 {
    color: #990000;
    font-weight: bold;
}

</style>

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-228159-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>
<script language="php" src="formsub.php"></script>
<script language="JavaScript" src="gen_validatorv31.js" type="text/javascript"></script>
</head>








<body link="#003399" alink="#FF9933" vlink="#6699ff">

<center>


<?php include(substr(getenv("SCRIPT_FILENAME"),0,strpos(getenv("SCRIPT_FILENAME"),getenv("SCRIPT_NAME")))."/includes/header.php"); ?>



<table width="1000" bgcolor="#FFFFFF">
  <tr><td>


<IMG SRC="images/contact_info.jpg" ALT="contact infomation" WIDTH=492 HEIGHT=49 border="0" align="left"/>
<br />
<br />
<br />
<br />



<center>
<TABLE BORDER=0 CELLPADDING=0 WIDTH=90%>



<TR>
  <TD align="right" valign=top><form method="POST" name="contact_form"
action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>">
    <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
      <tr>
        <td width="29%" height="25" align="right" valign="top"><label for="name2">Name: </label></td>
        <td width="71%" align="left" valign="top"><input type="text" name="name"
value="<?php echo htmlentities($name) ?>" style="height:17px; width:200px; font-size:11px; margin:0" /></td>
        </tr>
      <tr>
        <td height="25" align="right" valign="top"><label for="email2">Email:</label></td>
        <td align="left" valign="top"><input type="text" name="email" value="<?php echo htmlentities($visitor_email) ?>" style="height:17px; width:200px; font-size:11px; margin:0" /></td>
        </tr>
      <tr>
        <td height="25" align="right" valign="top">
          <label for="phone2">Phone: </label>
        </td>
        <td align="left" valign="top">
          <input type="text" name="phone" value="<?php echo htmlentities($phone) ?>" style="height:17px; width:200px; font-size:11px; margin:0" />
        </td>
        </tr>
      <tr>
        <td align="right" valign="top">Message:</td>
        <td align="left" valign="top">
          <textarea name="message" style="width:200px; height:150px; overflow:hidden; font-size:11px; margin:0"
><?php echo htmlentities($user_message) ?></textarea>
        </td>
        </tr>
      <tr>
        <td align="right"> </td>
        <td><p><br />
          <img src="captcha_code_file.php?rand=<?php echo rand(); ?>"
id="captchaimg" />
          <label for="message3"><br />
            <br />
            Enter the code above here :</label>
          <input id="6_letters_code" name="6_letters_code" type="text" style="height:17px; width:130px; font-size:11px" />
        </p>
          <p>
            <input type="submit" value="Submit" name="submit" /> <input type="reset" value="Clear">
          </p></td>
        </tr>
    </table>
    <p><center>After you click submit,<br />
      please do not resubmit. Thank you.</center></p>
    <p align="right"> </p>
    
    <p> </p>
    
    <p style="margin-left:20px"> </p>
    
    <p style="margin-left:60px"><br /></p>
    
    <p> </p>
    </form><script language="JavaScript">
// Code for validating the form
// Visit http://www.javascript-coder.com/html-form/javascript-form-validation.phtml
// for details
var frmvalidator  = new Validator("contact_form");
//remove the following two lines if you like error message box popups
frmvalidator.EnableOnPageErrorDisplaySingleBox();
frmvalidator.EnableMsgsTogether();

frmvalidator.addValidation("name","req","Please provide your name"); 
frmvalidator.addValidation("email","req","Please provide your email");
frmvalidator.addValidation("phone","req","Please provide your phone number"); 
frmvalidator.addValidation("email","email","Please enter a valid email address");
frmvalidator.addValidation("phone","maxlen=20");
frmvalidator.addValidation("Phone","decimal");
</script>
<script language='JavaScript' type='text/javascript'>
function refreshCaptcha()
{
    var img = document.images['captchaimg'];
    img.src = img.src.substring(0,img.src.lastIndexOf("?"))+"?rand="+Math.random()*1000;
}
</script>    </td>
  <TD width="20" valign=top> </td>
  
  
  <TD width="20" valign=top>
    
    </td>
  
  
</tr>
</table>
</center>










 </td></tr></table>

<!--footer-->
<?php include(substr(getenv("SCRIPT_FILENAME"),0,strpos(getenv("SCRIPT_FILENAME"),getenv("SCRIPT_NAME")))."/includes/footer.php"); ?>

 </body>
</html>
```
formsub

```
<?php 
$your_email ='[email protected]';// <<=== update to your email address

session_start();
$errors = '';
$name = '';
$visitor_email = '';
$phone = '';
$user_message = '';

if(isset($_POST['submit']))
{
    
    $name = $_POST['name'];
    $visitor_email = $_POST['email'];
    $phone = $_POST['phone'];
    $user_message = $_POST['message'];
    ///------------Do Validations-------------
    if(empty($name)||empty($visitor_email))
    {
        $errors .= "\n Name Email and Phone are required fields. ";    
    }
    if(IsInjected($visitor_email))
    {
        $errors .= "\n Bad email value!";
    }
    if(empty($_SESSION['6_letters_code'] ) ||
      strcasecmp($_SESSION['6_letters_code'], $_POST['6_letters_code']) != 0)
    {
    //Note: the captcha code is compared case insensitively.
    //if you want case sensitive match, update the check above to
    // strcmp()
        $errors .= "\n The captcha code does not match!";
    }
    
    if(empty($errors))
    {
        //send the email
        $to = $your_email;
        $subject="Rippedsheets Form Submission";
        $from = $your_email;
        $ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : '';
        
        $body = "A user  $name submitted the contact form:\n".
        "Name: $name\n".
        "Email: $visitor_email \n".
        "Phone: $phone \n".
        "Message: \n ".
        "$user_message\n".
        "IP: $ip\n";    
        
        $headers = "From: $from \r\n";
        $headers .= "Reply-To: $visitor_email \r\n";
        
        mail($to, $subject, $body,$headers);
        
        header('Location: thankyou.html');
    }
}

// Function to validate against any email injection attempts
function IsInjected($str)
{
  $injections = array('(\n+)',
              '(\r+)',
              '(\t+)',
              '(%0A+)',
              '(%0D+)',
              '(%08+)',
              '(%09+)'
              );
  $inject = join('|', $injections);
  $inject = "/$inject/i";
  if(preg_match($inject,$str))
    {
    return true;
  }
  else
    {
    return false;
  }
}
```
and here is the validator I am using:

```
/*
  -------------------------------------------------------------------------
              JavaScript Form Validator (gen_validatorv31.js)
              Version 3.1.2
    Copyright (C) 2003-2008 JavaScript-Coder.com. All rights reserved.
    You can freely use this script in your Web pages.
    You may adapt this script for your own needs, provided these opening credit
    lines are kept intact.
        
    The Form validation script is distributed free from JavaScript-Coder.com
    For updates, please visit:
    http://www.javascript-coder.com/html-form/javascript-form-validation.phtml
    
    Questions & comments please send to form.val at javascript-coder.com
  -------------------------------------------------------------------------  
*/
function Validator(frmname)
{
  this.formobj=document.forms[frmname];
    if(!this.formobj)
    {
      alert("Error: couldnot get Form object "+frmname);
        return;
    }
    if(this.formobj.onsubmit)
    {
     this.formobj.old_onsubmit = this.formobj.onsubmit;
     this.formobj.onsubmit=null;
    }
    else
    {
     this.formobj.old_onsubmit = null;
    }
    this.formobj._sfm_form_name=frmname;
    this.formobj.onsubmit=form_submit_handler;
    this.addValidation = add_validation;
    this.setAddnlValidationFunction=set_addnl_vfunction;
    this.clearAllValidations = clear_all_validations;
    this.disable_validations = false;//new
    document.error_disp_handler = new sfm_ErrorDisplayHandler();
    this.EnableOnPageErrorDisplay=validator_enable_OPED;
    this.EnableOnPageErrorDisplaySingleBox=validator_enable_OPED_SB;
    this.show_errors_together=true;
    this.EnableMsgsTogether=sfm_enable_show_msgs_together;
    document.set_focus_onerror=true;
    this.EnableFocusOnError=sfm_validator_enable_focus;

}

function sfm_validator_enable_focus(enable)
{
    document.set_focus_onerror = enable;
}

function set_addnl_vfunction(functionname)
{
  this.formobj.addnlvalidation = functionname;
}

function sfm_set_focus(objInput)
{
    if(document.set_focus_onerror)
    {
        objInput.focus();
    }
}

function sfm_enable_show_msgs_together()
{
    this.show_errors_together=true;
    this.formobj.show_errors_together=true;
}
function clear_all_validations()
{
    for(var itr=0;itr < this.formobj.elements.length;itr++)
    {
        this.formobj.elements[itr].validationset = null;
    }
}

function form_submit_handler()
{
   var bRet = true;
    document.error_disp_handler.clear_msgs();
    for(var itr=0;itr < this.elements.length;itr++)
    {
        if(this.elements[itr].validationset &&
       !this.elements[itr].validationset.validate())
        {
          bRet = false;
        }
        if(!bRet && !this.show_errors_together)
        {
          break;

        }
    }

    if(this.addnlvalidation)
    {
      str =" var ret = "+this.addnlvalidation+"()";
      eval(str);

     if(!ret) 
     {
       bRet=false; 
     }

    }

   if(!bRet)
    {
      document.error_disp_handler.FinalShowMsg();
      return false;
    }
    return true;
}

function add_validation(itemname,descriptor,errstr)
{
    var condition = null;
    if(arguments.length > 3)
    {
     condition = arguments[3]; 
    }
  if(!this.formobj)
    {
        alert("Error: The form object is not set properly");
        return;
    }//if
    var itemobj = this.formobj[itemname];
    if(itemobj.length && isNaN(itemobj.selectedIndex) )
    //for radio button; don't do for 'select' item
    {
        itemobj = itemobj[0];
    }    
  if(!itemobj)
    {
        alert("Error: Couldnot get the input object named: "+itemname);
        return;
    }
    if(!itemobj.validationset)
    {
        itemobj.validationset = new ValidationSet(itemobj,this.show_errors_together);
    }
    itemobj.validationset.add(descriptor,errstr,condition);
    itemobj.validatorobj=this;
}
function validator_enable_OPED()
{
    document.error_disp_handler.EnableOnPageDisplay(false);
}

function validator_enable_OPED_SB()
{
    document.error_disp_handler.EnableOnPageDisplay(true);
}
function sfm_ErrorDisplayHandler()
{
  this.msgdisplay = new AlertMsgDisplayer();
  this.EnableOnPageDisplay= edh_EnableOnPageDisplay;
  this.ShowMsg=edh_ShowMsg;
  this.FinalShowMsg=edh_FinalShowMsg;
  this.all_msgs=new Array();
  this.clear_msgs=edh_clear_msgs;
}
function edh_clear_msgs()
{
    this.msgdisplay.clearmsg(this.all_msgs);
    this.all_msgs = new Array();
}
function edh_FinalShowMsg()
{
    this.msgdisplay.showmsg(this.all_msgs);
}
function edh_EnableOnPageDisplay(single_box)
{
    if(true == single_box)
    {
        this.msgdisplay = new SingleBoxErrorDisplay();
    }
    else
    {
        this.msgdisplay = new DivMsgDisplayer();        
    }
}
function edh_ShowMsg(msg,input_element)
{
    
   var objmsg = new Array();
   objmsg["input_element"] = input_element;
   objmsg["msg"] =  msg;
   this.all_msgs.push(objmsg);
}
function AlertMsgDisplayer()
{
  this.showmsg = alert_showmsg;
  this.clearmsg=alert_clearmsg;
}
function alert_clearmsg(msgs)
{

}
function alert_showmsg(msgs)
{
    var whole_msg="";
    var first_elmnt=null;
    for(var m=0;m < msgs.length;m++)
    {
        if(null == first_elmnt)
        {
            first_elmnt = msgs[m]["input_element"];
        }
        whole_msg += msgs[m]["msg"] + "\n";
    }
    
    alert(whole_msg);

    if(null != first_elmnt)
    {
        sfm_set_focus(first_elmnt);
    }
}
function sfm_show_error_msg(msg,input_elmt)
{
    document.error_disp_handler.ShowMsg(msg,input_elmt);
}
function SingleBoxErrorDisplay()
{
 this.showmsg=sb_div_showmsg;
 this.clearmsg=sb_div_clearmsg;
}

function sb_div_clearmsg(msgs)
{
    var divname = form_error_div_name(msgs);
    show_div_msg(divname,"");
}

function sb_div_showmsg(msgs)
{
    var whole_msg="<ul>\n";
    for(var m=0;m < msgs.length;m++)
    {
        whole_msg += "<li>" + msgs[m]["msg"] + "</li>\n";
    }
    whole_msg += "</ul>";
    var divname = form_error_div_name(msgs);
    show_div_msg(divname,whole_msg);
}
function form_error_div_name(msgs)
{
    var input_element= null;

    for(var m in msgs)
    {
     input_element = msgs[m]["input_element"];
     if(input_element){break;}
    }

    var divname ="";
    if(input_element)
    {
     divname = input_element.form._sfm_form_name + "_errorloc";
    }

    return divname;
}
function DivMsgDisplayer()
{
 this.showmsg=div_showmsg;
 this.clearmsg=div_clearmsg;
}
function div_clearmsg(msgs)
{
    for(var m in msgs)
    {
        var divname = element_div_name(msgs[m]["input_element"]);
        show_div_msg(divname,"");
    }
}
function element_div_name(input_element)
{
  var divname = input_element.form._sfm_form_name + "_" + 
                   input_element.name + "_errorloc";

  divname = divname.replace(/[\[\]]/gi,"");

  return divname;
}
function div_showmsg(msgs)
{
    var whole_msg;
    var first_elmnt=null;
    for(var m in msgs)
    {
        if(null == first_elmnt)
        {
            first_elmnt = msgs[m]["input_element"];
        }
        var divname = element_div_name(msgs[m]["input_element"]);
        show_div_msg(divname,msgs[m]["msg"]);
    }
    if(null != first_elmnt)
    {
        sfm_set_focus(first_elmnt);
    }
}
function show_div_msg(divname,msgstring)
{
    if(divname.length<=0) return false;

    if(document.layers)
    {
        divlayer = document.layers[divname];
        if(!divlayer){return;}
        divlayer.document.open();
        divlayer.document.write(msgstring);
        divlayer.document.close();
    }
    else
    if(document.all)
    {
        divlayer = document.all[divname];
        if(!divlayer){return;}
        divlayer.innerHTML=msgstring;
    }
    else
    if(document.getElementById)
    {
        divlayer = document.getElementById(divname);
        if(!divlayer){return;}
        divlayer.innerHTML =msgstring;
    }
    divlayer.style.visibility="visible";    
}

function ValidationDesc(inputitem,desc,error,condition)
{
  this.desc=desc;
    this.error=error;
    this.itemobj = inputitem;
    this.condition = condition;
    this.validate=vdesc_validate;
}
function vdesc_validate()
{
    if(this.condition != null )
    {
        if(!eval(this.condition))
        {
            return true;
        }
    }
    if(!validateInput(this.desc,this.itemobj,this.error))
    {
        this.itemobj.validatorobj.disable_validations=true;

        sfm_set_focus(this.itemobj);

        return false;
    }
    return true;
}
function ValidationSet(inputitem,msgs_together)
{
    this.vSet=new Array();
    this.add= add_validationdesc;
    this.validate= vset_validate;
    this.itemobj = inputitem;
    this.msgs_together = msgs_together;
}
function add_validationdesc(desc,error,condition)
{
  this.vSet[this.vSet.length]= 
  new ValidationDesc(this.itemobj,desc,error,condition);
}
function vset_validate()
{
    var bRet = true;
    for(var itr=0;itr<this.vSet.length;itr++)
    {
        bRet = bRet && this.vSet[itr].validate();
        if(!bRet && !this.msgs_together)
        {
            break;
        }
    }
    return bRet;
}
function validateEmail(email)
{
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }
    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) 
      {
        var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
        if(splitted[2].match(regexp_ip) == null) return false;
      }// if
      return true;
    }
return false;
}

function IsCheckSelected(objValue,chkValue)
{
    var selected=false;
    var objcheck = objValue.form.elements[objValue.name];
    if(objcheck.length)
    {
        var idxchk=-1;
        for(var c=0;c < objcheck.length;c++)
        {
           if(objcheck[c].value == chkValue)
           {
             idxchk=c;
             break;
           }//if
        }//for
        if(idxchk>= 0)
        {
          if(objcheck[idxchk].checked=="1")
          {
            selected=true;
          }
        }//if
    }
    else
    {
        if(objValue.checked == "1")
        {
            selected=true;
        }//if
    }//else    

    return selected;
}
function TestDontSelectChk(objValue,chkValue,strError)
{
    var pass = true;
    pass = IsCheckSelected(objValue,chkValue)?false:true;

    if(pass==false)
    {
     if(!strError || strError.length ==0) 
        { 
            strError = "Can't Proceed as you selected "+objValue.name;  
        }//if              
      sfm_show_error_msg(strError,objValue);
      
    }
    return pass;
}
function TestShouldSelectChk(objValue,chkValue,strError)
{
    var pass = true;

    pass = IsCheckSelected(objValue,chkValue)?true:false;

    if(pass==false)
    {
     if(!strError || strError.length ==0) 
        { 
            strError = "You should select "+objValue.name;  
        }//if              
      sfm_show_error_msg(strError,objValue);
      
    }
    return pass;
}
function TestRequiredInput(objValue,strError)
{
 var ret = true;
 var val = objValue.value;
 val = val.replace(/^\s+|\s+$/g,"");//trim
    if(eval(val.length) == 0) 
    { 
       if(!strError || strError.length ==0) 
       { 
         strError = objValue.name + " : Required Field"; 
       }//if 
       sfm_show_error_msg(strError,objValue); 
       ret=false; 
    }//if 
return ret;
}
function TestMaxLen(objValue,strMaxLen,strError)
{
 var ret = true;
    if(eval(objValue.value.length) > eval(strMaxLen)) 
    { 
      if(!strError || strError.length ==0) 
      { 
        strError = objValue.name + " : "+ strMaxLen +" characters maximum "; 
      }//if 
      sfm_show_error_msg(strError,objValue); 
      ret = false; 
    }//if 
return ret;
}
function TestMinLen(objValue,strMinLen,strError)
{
 var ret = true;
    if(eval(objValue.value.length) <  eval(strMinLen)) 
    { 
      if(!strError || strError.length ==0) 
      { 
        strError = objValue.name + " : " + strMinLen + " characters minimum  "; 
      }//if               
      sfm_show_error_msg(strError,objValue); 
      ret = false;   
    }//if 
return ret;
}
function TestInputType(objValue,strRegExp,strError,strDefaultError)
{
   var ret = true;

    var charpos = objValue.value.search(strRegExp); 
    if(objValue.value.length > 0 &&  charpos >= 0) 
    { 
     if(!strError || strError.length ==0) 
      { 
        strError = strDefaultError;
      }//if 
      sfm_show_error_msg(strError,objValue); 
      ret = false; 
    }//if 
 return ret;
}
function TestEmail(objValue,strError)
{
var ret = true;
     if(objValue.value.length > 0 && !validateEmail(objValue.value)     ) 
     { 
       if(!strError || strError.length ==0) 
       { 
          strError = objValue.name+": Enter a valid Email address "; 
       }//if                                               
       sfm_show_error_msg(strError,objValue); 
       ret = false; 
     }//if 
return ret;
}
function TestLessThan(objValue,strLessThan,strError)
{
var ret = true;
      if(isNaN(objValue.value)) 
      { 
        sfm_show_error_msg(objValue.name +": Should be a number ",objValue); 
        ret = false; 
      }//if 
      else
      if(eval(objValue.value) >=  eval(strLessThan)) 
      { 
        if(!strError || strError.length ==0) 
        { 
          strError = objValue.name + " : value should be less than "+ strLessThan; 
        }//if               
        sfm_show_error_msg(strError,objValue); 
        ret = false;                 
       }//if   
return ret;          
}
function TestGreaterThan(objValue,strGreaterThan,strError)
{
var ret = true;
     if(isNaN(objValue.value)) 
     { 
       sfm_show_error_msg(objValue.name+": Should be a number ",objValue); 
       ret = false; 
     }//if 
     else
     if(eval(objValue.value) <=  eval(strGreaterThan)) 
      { 
        if(!strError || strError.length ==0) 
        { 
          strError = objValue.name + " : value should be greater than "+ strGreaterThan; 
        }//if               
        sfm_show_error_msg(strError,objValue);  
        ret = false;
      }//if  
return ret;           
}
function TestRegExp(objValue,strRegExp,strError)
{
var ret = true;
    if( objValue.value.length > 0 && 
        !objValue.value.match(strRegExp) ) 
    { 
      if(!strError || strError.length ==0) 
      { 
        strError = objValue.name+": Invalid characters found "; 
      }//if                                                               
      sfm_show_error_msg(strError,objValue); 
      ret = false;                   
    }//if 
return ret;
}
function TestDontSelect(objValue,dont_sel_index,strError)
{
var ret = true;
    if(objValue.selectedIndex == null) 
    { 
      sfm_show_error_msg("ERROR: dontselect command for non-select Item"); 
      ret =  false; 
    } 
    if(objValue.selectedIndex == eval(dont_sel_index)) 
    { 
     if(!strError || strError.length ==0) 
      { 
      strError = objValue.name+": Please Select one option "; 
      }//if                                                               
      sfm_show_error_msg(strError,objValue); 
      ret =  false;                                   
     } 
return ret;
}
function TestSelectOneRadio(objValue,strError)
{
    var objradio = objValue.form.elements[objValue.name];
    var one_selected=false;
    for(var r=0;r < objradio.length;r++)
    {
      if(objradio[r].checked)
      {
          one_selected=true;
        break;
      }
    }
    if(false == one_selected)
    {
      if(!strError || strError.length ==0) 
       {
        strError = "Please select one option from "+objValue.name;
       }    
      sfm_show_error_msg(strError,objValue);
    }
return one_selected;
}

function validateInput(strValidateStr,objValue,strError) 
{ 
    var ret = true;
    var epos = strValidateStr.search("="); 
    var  command  = ""; 
    var  cmdvalue = ""; 
    if(epos >= 0) 
    { 
     command  = strValidateStr.substring(0,epos); 
     cmdvalue = strValidateStr.substr(epos+1); 
    } 
    else 
    { 
     command = strValidateStr; 
    } 
    switch(command) 
    { 
        case "req": 
        case "required": 
         { 
           ret = TestRequiredInput(objValue,strError)
           break;             
         }//case required 
        case "maxlength": 
        case "maxlen": 
          { 
             ret = TestMaxLen(objValue,cmdvalue,strError)
             break; 
          }//case maxlen 
        case "minlength": 
        case "minlen": 
           { 
             ret = TestMinLen(objValue,cmdvalue,strError)
             break; 
            }//case minlen 
        case "alnum": 
        case "alphanumeric": 
           { 
                ret = TestInputType(objValue,"[^A-Za-z0-9]",strError, 
                        objValue.name+": Only alpha-numeric characters allowed ");
                break; 
           }
        case "alnum_s": 
        case "alphanumeric_space": 
           { 
                ret = TestInputType(objValue,"[^A-Za-z0-9\\s]",strError, 
                        objValue.name+": Only alpha-numeric characters and space allowed ");
                break; 
           }           
        case "num": 
        case "numeric": 
           { 
                ret = TestInputType(objValue,"[^0-9]",strError, 
                        objValue.name+": Only digits allowed ");
                break;               
           }
        case "dec": 
        case "decimal": 
           { 
                ret = TestInputType(objValue,"[^0-9\.]",strError, 
                        objValue.name+": Only numbers allowed ");
                break;               
           }
        case "alphabetic": 
        case "alpha": 
           { 
                ret = TestInputType(objValue,"[^A-Za-z]",strError, 
                        objValue.name+": Only alphabetic characters allowed ");
                break; 
           }
        case "alphabetic_space": 
        case "alpha_s": 
           { 
                ret = TestInputType(objValue,"[^A-Za-z\\s]",strError, 
                        objValue.name+": Only alphabetic characters and space allowed ");
                break; 
           }
        case "email": 
          { 
               ret = TestEmail(objValue,strError);
               break; 
          }
        case "lt": 
        case "lessthan": 
         { 
              ret = TestLessThan(objValue,cmdvalue,strError);
              break; 
         }
        case "gt": 
        case "greaterthan": 
         { 
            ret = TestGreaterThan(objValue,cmdvalue,strError);
            break; 
         }//case greaterthan 
        case "regexp": 
         { 
            ret = TestRegExp(objValue,cmdvalue,strError);
           break; 
         }
        case "dontselect": 
         { 
             ret = TestDontSelect(objValue,cmdvalue,strError)
             break; 
         }
        case "dontselectchk":
        {
            ret = TestDontSelectChk(objValue,cmdvalue,strError)
            break;
        }
        case "shouldselchk":
        {
            ret = TestShouldSelectChk(objValue,cmdvalue,strError)
            break;
        }
        case "selone_radio":
        {
            ret = TestSelectOneRadio(objValue,strError);
            break;
        }         
    }//switch 
    return ret;
}
function VWZ_IsListItemSelected(listname,value)
{
 for(var i=0;i < listname.options.length;i++)
 {
  if(listname.options[i].selected == true &&
   listname.options[i].value == value) 
   {
     return true;
   }
 }
 return false;
}
function VWZ_IsChecked(objcheck,value)
{
 if(objcheck.length)
 {
     for(var c=0;c < objcheck.length;c++)
     {
       if(objcheck[c].checked == "1" && 
         objcheck[c].value == value)
       {
        return true; 
       }
     }
 }
 else
 {
  if(objcheck.checked == "1" )
   {
    return true; 
   }    
 }
 return false;
}
/*
    Copyright (C) 2003-2009 JavaScript-Coder.com . All rights reserved.
*/
```
Thank you so much


----------



## sierragirl78 (Apr 30, 2013)

Lets pretend it is the .htaccess, what would I add to it to be able to parse?

It already has this

```
# as per netsol forums, CGI-Compiled PHP
#AddHandler Extension_Type .html .htm .php3 .php4 .php
#Action Extension_Type /cgi-bin/php.dat
AddType application/x-httpd-php .html .htm
AddType text/x-vcard .vcf
```
The second to last line from the bottom should take care of it, but is there anything else I can add?


----------



## Fjandr (Sep 26, 2012)

I won't have a chance to go through the code until tomorrow, but as for the .htaccess it looks like it should in order to parse files with .htm and .html extensions.


----------



## sierragirl78 (Apr 30, 2013)

Update.
This is still broken and I added another contact form to the page. It is at Sample Request Form

It again doesn't go to the thankyou.html
This one also doesn't actually send emails.

I am pulling my hair out on this, and I just got it done.


----------



## Fjandr (Sep 26, 2012)

Could you also post the captcha_code_file.php, or post the link it came from?


----------

