Click here to Skip to main content
15,891,951 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I am trying to make a form that will hide on submit and replace it with a thank you msg. Ive tried several things but nothing has worked so far. The code I have now works fine. I would ultimately like the error msg to show on the same page as well with a back button. I am working on that for now. Wish me luck! Thanks for all the help in advance you guys are always awesome!

this is my php
PHP
if (isset($_POST['email'])) {
    $email_to = "stormygurl73@yahoo.com";
    $email_subject = "Your email subject line";

    function died($error) {
        echo "We are very sorry, but there were error(s) found with the form you submitted. ";
        echo "These errors appear below.<br /><br />";
        echo $error."<br /><br />";
        echo "Please go back and fix these errors.<br /><br />";
        die();
    }
    // validation expected data exists
    if (!isset($_POST['first_name']) || !isset($_POST['last_name']) || !isset($_POST['email']) || !isset($_POST['telephone']) || !isset($_POST['comments'])) {
        died('We are sorry, but there appears to be a problem with the form you submitted.');
    }
    $first_name = $_POST['first_name']; // required
    $last_name = $_POST['last_name']; // required
    $email_from = $_POST['email']; // required
    $telephone = $_POST['telephone']; // not required
    $comments = $_POST['comments']; // required
    $error_message = "";
    $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
    if (!preg_match($email_exp, $email_from)) {
        $error_message. = 'The Email Address you entered does not appear to be valid.<br />';
    }
    $string_exp = "/^[A-Za-z .'-]+$/";
    if (!preg_match($string_exp, $first_name)) {
        $error_message. = 'The First Name you entered does not appear to be valid.<br />';
    }
    if (!preg_match($string_exp, $last_name)) {
        $error_message. = 'The Last Name you entered does not appear to be valid.<br />';
    }
    if (strlen($comments) < 2) {
        $error_message. = 'The Comments you entered do not appear to be valid.<br />';
    }
    if (strlen($error_message) > 0) {
        died($error_message);
    }
    $email_message = "Form details below.\n\n";

    function clean_string($string) {
        $bad = array("content-type", "bcc:", "to:", "cc:", "href");
        return str_replace($bad, "", $string);
    }
    $email_message. = "First Name: ".clean_string($first_name)."\n";
    $email_message. = "Last Name: ".clean_string($last_name)."\n";
    $email_message. = "Email: ".clean_string($email_from)."\n";
    $email_message. = "Telephone: ".clean_string($telephone)."\n";
    $email_message. = "Comments: ".clean_string($comments)."\n";
    $headers = 'From: '.$email_from."\r\n".'Reply-To: '.$email_from."\r\n".'X-Mailer: PHP/'.phpversion();@mail($email_to, $email_subject, $email_message, $headers);
    echo "We have received your enquiry. We will contact you soon.";
} ?>



I am using just a basic contact form. Thanks for any help!
Posted
Updated 13-Jan-14 5:22am
v2

1 solution

Hello,


$("#buttonid").click(function(){
$("#formid").hide();
});


// Code

Give an onsubmit button id as "buttonid" which will help you to call above javascript function and it will hide your form by taking as form id.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900