Generated Form

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • Aliens Anonymous
    Special Status

    • Jan 2006
    • 1144

    Generated Form

    I have been messing about with the idea of having a web site form generator, it is generating the forms ok and when you use them everything looks ok, you get pass to the thankyou page, the problem is no email is recieved i thought that it was not sending any but after checking my web mail on the server their they all are siting their with Mail delivery failed: returning message to sender this is the script for the form is it possible that the generator is getting something wrong as in the Mail delivery failed: returning message to sender the Email address has changed. Thanks

    PHP Code:
    <?php
     $comments_textarea_1 
    "<text";
     
    $comments_textarea_2 'area name="comments" cols="60" rows="6">';
     
    $end_textarea_1 "</text";
     
    $end_textarea_2 "area>";
     if (!
    function_exists('str_split')) {
      function 
    str_split($string$split_length 1) {
       return 
    explode("\r\n"chunk_split($string$split_length));
      }
     }
     
     function 
    generateDropDown($values,$value_selected) {
      
    $value_array explode(',',$values);
      
    $i 0;
      while (
    $value_array[$i] != '') {
       if (
    $value_array[$i] == $value_selected) {
        
    $selected ' selected ';
       } else {
        
    $selected '';
       }
       
    $options .= '<option value="' $value_array[$i] . '" ' $selected '>' $value_array[$i] . '</option>';
       
    $i++;
      }
      return 
    $options;
     }
     
     function 
    checkValidChars($string,$valid_chars) {
      
    $string_array str_split($string);
      
    $valid_chars_array str_split($valid_chars);
      
    $i 0;
      while (
    $string_array[$i] != '') {
       if (!
    in_array($string_array[$i],$valid_chars_array)) {
        return 
    false;
       }
       
    $i++;
      }
      return 
    true;
     }
     
     function 
    getResultDiv($value,$type='error') {
      
    // Formats successful or error results whether they are in an array or a snippet.
      
    if ($type == 'success') {
       
    $class 'success-div';
      } elseif (
    $type == 'test') {
       
    $class 'test-div';
      } else {
       
    $class 'error-div';
      }
      if (
    is_array($value)) {
       for (
    $i 0$value[$i] != ''$i++) {
        
    $result_div .= '<li>' $value[$i] . '</li>';
       }
       if (
    $result_div != '') {
        
    $result_div '<div class="' $class '"><ul>' $result_div '</ul></div>';
       }
      } else {
       if (
    $value != '') {
        
    $result_div '<div class="' $class '">' $value '</div>';
       }
      }
      return 
    $result_div;
     }
     function 
    getValidation($add_edit,$name,$msg,$type,$value='') {
      global 
    $edit_action;
      global 
    $add_action;
      global 
    $error_div;
      global 
    $_POST;
      global 
    $_GET;
      if  (
    $_POST['action'] == "submit_form") {
       
    $do 1;
      } 
      
    // No value
      
    if ($type == 'novalue') {
       if (
    $do == 1) {
        if (
    strlen($_POST[$name]) < '1') {
         
    $error_div .= getResultDiv($msg);
        }
       }
       
    $js_clause 'form.' $name '.value == ""';
       return 
    jsCheck($js_clause,$msg,$name);
      }
      
      
    // Number is less than
      
    if ($type == 'less_than') {
       if (
    $do == 1) {
        if (
    $_POST[$name] < $value) {
         
    $error_div .= getResultDiv($msg);
        }
       }
       
    $js_clause 'form.' $name '.value < ' $value;
       return 
    jsCheck($js_clause,$msg,$name);
      }
      
      
    // Number is greater than
      
    if ($type == 'greater_than') {
       if (
    $do == 1) {
        if (
    $_POST[$name] > $value) {
         
    $error_div .= getResultDiv($msg);
        }
       }
       
    $js_clause 'form.' $name '.value > ' $value;
       return 
    jsCheck($js_clause,$msg,$name);
      }
      
      
    // Value equals
      
    if ($type == 'equals') {
       if (
    $do == 1) {
        if (
    $_POST[$name] == $value) {
         
    $error_div .= getResultDiv($msg);
        }
       }
       
    $js_clause 'form.' $name '.value == ' $value;
       return 
    jsCheck($js_clause,$msg,$name);
      }
      
      
    // Less Than String Length
      
    if ($type == 'strlen_less') {
       if (
    $do == 1) {
        if (
    strlen($_POST[$name]) < $value) {
         
    $error_div .= getResultDiv($msg);
        }
       }
       
    $js_clause 'form.' $name '.value.length < ' $value;
       return 
    jsCheck($js_clause,$msg,$name);
      }
      
      
    // String Length
      
    if ($type == 'strlen') {
       if (
    $do == 1) {
        if (
    strlen($_POST[$name]) != $value) {
         
    $error_div .= getResultDiv($msg);
        }
       }
       
    $js_clause 'form.' $name '.value.length != ' $value;
       return 
    jsCheck($js_clause,$msg,$name);
      }
      
      
    // Zip Code
      
    if ($type == 'zip') {
       
    $valid_chars "0123456789";
       if (
    $do == 1) {
        if (
    strlen($_POST[$name]) != 5) {
         
    $error_div .= getResultDiv('Please enter 5 digits for the zip code');
        } elseif (!
    checkValidChars($_POST[$name],$valid_chars)) {
         
    $error_div .= getResultDiv('Please enter only digits for the zip code');
        }
       }
       
    $js_clause_1 'form.' $name '.value.length != 5';
       
    $js_clause_2 '!ValidChars(form.' $name '.value,"' $valid_chars '")';
       return 
        
    jsCheck($js_clause_1,'Please enter 5 numbers for the zip code',$name) . 
        
    jsCheck($js_clause_2,'Please enter only numbers in the zip code',$name);
      }
      
      
    // Price
      
    if ($type == 'price') {
       
    $valid_chars "0123456789.,";
       
       if (
    $do == 1) {
        
    $post_value str_replace(',','',$_POST[$name]);
        if (!
    checkValidChars($post_value,$valid_chars)) {
         
    $error_div .= getResultDiv('Please enter only a number for ' $msg);
        } elseif (
    strlen($post_value) > $value) {
         
    $error_div .= getResultDiv('Please enter a smaller value for ' $msg);
        }
       }
       
    $js_clause_1 'form.' $name '.value.length > ' $value;
       
    $js_clause_2 '!ValidChars(form.' $name '.value,"' $valid_chars '")';
       return 
        
    jsCheck($js_clause_1,'Please enter no more than ' $value ' characters for ' $msg,$name) . 
        
    jsCheck($js_clause_2,'Please enter only numbers for ' $msg,$name);
      }
      
      
    // Number
      
    if ($type == 'number') {
       
    $valid_chars "0123456789";
       if (
    $do == 1) {
        
    $post_value str_replace(',','',$_POST[$name]);
        if (!
    checkValidChars($post_value,$valid_chars)) {
         
    $error_div .= getResultDiv('Please enter only a number for ' $msg);
        } elseif (
    strlen($post_value) > $value) {
         
    $error_div .= getResultDiv('Please enter a smaller value for ' $msg);
        }
       }
       
    $js_clause_1 'form.' $name '.value.length > ' $value;
       
    $js_clause_2 '!ValidChars(form.' $name '.value,"' $valid_chars '")';
       return 
        
    jsCheck($js_clause_1,'Please enter no more than ' $value ' numbers for ' $msg,$name) . 
        
    jsCheck($js_clause_2,'Please enter only numbers for ' $msg,$name);
      }
      
      
    // Phone Number
      
    if ($type == 'phone') {
       
    $valid_chars "0123456789-() ";
       
    $value 7;
       if (
    $do == 1) {
        if (!
    checkValidChars($_POST[$name],$valid_chars)) {
         
    $error_div .= getResultDiv('Please enter only a phone number for ' $msg);
        } elseif (
    strlen($post_value) > $value) {
         
    $error_div .= getResultDiv('Please enter a smaller value for ' $msg);
        }
       }
       
    $js_clause_1 'form.' $name '.value.length < ' $value;
       
    $js_clause_2 '!ValidChars(form.' $name '.value,"' $valid_chars '")';
       return 
        
    jsCheck($js_clause_1,'Please enter no more than ' $value ' numbers for the phone number',$name) . 
        
    jsCheck($js_clause_2,'Please enter a valid phone number',$name);
      }
      
      
      
    // Password
      
    if ($type == 'password') {
       
    $valid_chars "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
       if (
    $do == 1) {
        if (!
    checkValidChars($_POST[$name],$valid_chars)) {
         
    $error_div .= getResultDiv('Please enter only alpha-numeric values for ' $msg);
        } elseif (
    strlen($_POST[$name]) < $value || $_POST[$name] == '') {
         
    $error_div .= getResultDiv($msg ' must be at least 6 characters long');
        }
       }
       
    $js_clause_1 'form.' $name '.value.length < ' $value ' && ' ' form.' $name '.value.length > 0';
       
    $js_clause_2 '!ValidChars(form.' $name '.value,"' $valid_chars '")';
       return 
        
    jsCheck($js_clause_1,$msg ' must be at least 6 characters long',$name) . 
        
    jsCheck($js_clause_2,'Please enter only alpha-numeric values for ' $msg,$name);
      }
      
      
    // Duplicate
      
    if ($type == 'duplicate') {
       if (
    $do == 1) {
        
    $value_array explode(':',$value);
        
    $table $value_array[0];
        
    $column $value_array[1];
        
    $content $_POST[$name];
       }
      }
      
     }
     
     function 
    jsCheck($clause,$msg,$name) {
      return 
    '
       if (' 
    $clause ') {
        alert( "' 
    $msg '" );
        form.' 
    $name '.focus();
        return false;
       }
      '
    ;
     }
     
     
    $subject_options generateDropDown("",$_POST['subject']);
     
     
    $email['to'] = "aliendude@angies-cyberscriptes.org";
     
    $email['subject_prefix'] = "contact form";
     
     
     if (
    $_POST['action'] == 'submit_form') {
      
         if (
    strlen($_POST['fullname']) < 1) {
          
    $error_div .= getResultDiv('Please enter a value for your name');
         }
         if (
    strlen($_POST['email']) < 1) {
          
    $error_div .= getResultDiv('Please enter a value for your email address');
         }
         if (
    strlen($_POST['phone']) < 6) {
          
    $error_div .= getResultDiv('Please enter a valid phone number (too short) ');
         }
        
        
    $valid_chars "0123456789-() ";
        if (!
    checkValidChars($_POST['phone'],$valid_chars)) {
          
    $error_div .= getResultDiv('Please enter a valid (numbers, dashes and parenthesis) ');
        }
         if (
    strlen($_POST['company']) < 2) {
          
    $error_div .= getResultDiv('Please enter your company name');
         }
         if (
    strlen($_POST['comments']) < 10) {
          
    $error_div .= getResultDiv('Please enter 10 or more characters for the comments');
         }
      
    $result_div .= $error_div;
      if (
    $error_div == '') {
       if (
    strlen($_POST["subject"] ) > 1) {
        
    $message .= "SUBJECT: " $_POST["subject"] . "\n";
       }
       if (
    strlen($_POST["fullname"]) > 1) {
        
    $message .= "FROM: " $_POST["fullname"] . "\n";
       }
       if (
    strlen($_POST["email"]) > 1) {
        
    $message .= "EMAIL: " $_POST["email"] . "\n";
       }
       if (
    strlen($_POST["phone"] ) > 1) {
        
    $message .= "PHONE: " $_POST["phone"] . "\n";
       }
       if (
    strlen($_POST["company"] ) > 1) {
        
    $message .= "COMPANY: " $_POST["company"] . "\n";
       }
       if (
    strlen($_POST["address"] ) > 1) {
        
    $message .= "Address: " $_POST["address"] . "  " .  $_POST["address_2"] . "  " $_POST["city"] . ", " $_POST["state"] . " " $_POST["zip"] . "\n";
       }
       if (
    strlen($_POST["comments"] ) > 1) {
        
    $message .= "COMMENTS:\n" $_POST["comments"] . "\n\n";
       }
       
    $message "Below is the information submitted to your online Contact form on " date('F j, Y') . " at " date('j:i a') . ":\n\n" $message;
       
       if (
    mail($email['to'],$email['subject_prefix'] . $_POST['subject'], $message"From: " $_POST['email'])) {
        
    header("Location: results.php");
       }
      } else {
       
    $form $_POST;
      }
     } 
     
    ?>
     <html>
     <head>
      <style>
       .required {
        font-weight:bold;
        color:red;
       }
       
       .error-div {
        border:1px solid #FF0000;
        background-color:#FFDEDE;
        padding:10px;
        margin-bottom:5px;
        color:#CC0000;
       }
       
       .success-div {
        border:1px solid #09BD00;
        background-color:#EEFFED;
        padding:10px;
        margin-bottom:5px;
        color:#006600;
       }
      </style>
      <script language="JavaScript" type="text/javascript">
      
      
      var IE = (document.all) ? 1 : 0;
    var DOM = 0; 
    if (parseInt(navigator.appVersion) >=5) {DOM=1};
            function txtShow( cId, txt2show ) {
                // Detect Browser
                if (DOM) {
           var viewer = document.getElementById(cId);
                  viewer.innerHTML=txt2show;
                } else if(IE) {
                   document.all[cId].innerHTML=txt2show;
                }
            }//txtshow
            
            function getTxt( cId ) {
                var output = "";
                // Detect Browser
                if (DOM) {
      var viewer = document.getElementById(cId);
      output = viewer.value;
                }
                else if(IE) {
                    output = document.all[cId].value;
                }
                return output;
            }//getTxt
      
      function countChars(cBoxName, cTxtName, maxKeys) {
       var str = new String(getTxt(cBoxName));
       var len = str.length;
       var showstr = '<span class="alert-pos">' + len + ' characters of ' + maxKeys + ' entered</span>';
       if (len > maxKeys) showstr = '<span class="alert">' + len + ' characters of ' + maxKeys + ' entered</span><br /><span class="alert">Too many characters, please edit content</span>';
       txtShow( cTxtName, showstr );
      }
      
      function ValidChars(sText,ValidChars) {
       var IsNumber=true;
       var Char;
       for (i = 0; i < sText.length && IsNumber == true; i++) { 
        Char = sText.charAt(i); 
        if (ValidChars.indexOf(Char) == -1)  {
         IsNumber = false;
        }
       }
       return IsNumber;
      }
      
      function checkform (form) {
       
       if (form.fullname.value == "") {
        alert( "Please enter your full name" );
        form.fullname.focus();
        return false;
       }
      
       if (form.email.value.length < 5) {
        alert( "Please enter your email" );
        form.email.focus();
        return false;
       }
      
       if (form.phone.value.length < 6) {
        alert( "Please enter a valid phone number" );
        form.phone.focus();
        return false;
       }
      
       if (!ValidChars(form.phone.value,"0123456789-() ")) {
        alert( "Please enter only a phone number for Please enter your phone number" );
        form.phone.focus();
        return false;
       }
      
       if (form.company.value == "") {
        alert( "Please enter your company name" );
        form.company.focus();
        return false;
       }
      
       if (form.comments.value.length < 10) {
        alert( "Please enter 10 or more characters for the comments" );
        form.comments.focus();
        return false;
       }
      
      }
      </script>
      <title>contact form</title>
     </head>
     <body>
      <?php echo $result_div?>
      <h1>contact form</h1>
      <form action="contact.php" onSubmit="return checkform(this);" method="post">
       <input type="hidden" name="action" value="submit_form" />
       <table>
        <tr>
         <td><span class="required">*</span>Full Name: </td>
         <td><input type="text" name="fullname" value="<?php echo $form['fullname']; ?>" size="40" /></td>
        </tr>
        <tr>
         <td><span class="required">*</span>E-mail: </td>
         <td><input type="text" name="email" size="40" value="<?php echo $form['email']; ?>" /></td>
        </tr>
        <tr>
         <td><span class="required">*</span>Phone: </td>
         <td><input type="text" name="phone" size="40" value="<?php echo $form['phone']; ?>" /></td>
        </tr>
        <tr>
         <td><span class="required">*</span>Company: </td>
         <td><input type="text" name="company" size="40" value="<?php echo $form['company']; ?>" /></td>
        </tr>
        <tr>
         <td><span class="required">*</span>Comments: </td>
         <td><?php echo $comments_textarea_1 $comments_textarea_2?><?php echo $form['comments']; ?><?php echo $end_textarea_1 $end_textarea_2?></td>
        </tr>
       </table>
        <input type="submit" value="Submit Contact Form" />
      </form>
     </body>
     </html>
  • Karen Mac
    General

    • Apr 2006
    • 8332

    #2
    Re: Generated Form

    Im not sure it has anything to do with the form not working, but,

    <form action="contact.php" onSubmit="return checkform(this);" method="post">
    <input type="hidden" name="action" value="submit_form" />
    I dont think you need the HIDDEN, and i would think it would need to be named Contact the same as your action. Try removing it and/or changing it to the same name.

    Karen

    VodaHost

    Your Website People!
    1-302-283-3777 North America / International
    02036089024 / United Kingdom
    291916438 / Australia

    ------------------------

    Top 3 Best Sellers

    Web Hosting - Unlimited disk space & bandwidth.

    Reseller Hosting - Start your own web hosting business.

    Search Engine & Directory Submission - 300 directories + (Google,Yahoo,Bing)


    Comment

    Working...
    X