表单提交重定向而不是回显成功消息?

时间:2013-10-09 20:59:36

标签: php forms email redirect

我目前正在使用PHP表单处理器发送包含表单字段的电子邮件。我想转换这个处理器,以便在成功提交后,它会将您重定向到另一个页面而不是回显成功消息(就像它当前那样)。下面是我用于处理器的代码。提前谢谢!

<?php
if(isset($_POST['email'])) {

    // EDIT THE 2 LINES BELOW AS REQUIRED
    $email_to = "your@email.com";
    $email_subject = "Email Subject Goes Here";


    $organization_name_field = $_POST['organization'];  //required
    $contact_name_field = $_POST['name'];       //required
    $city_field = $_POST['city'];           //not required
    $state_field = $_POST['state'];           //not required
    $zipcode_field = $_POST['zip'];           //not required
    $email_field = $_POST['email'];           //not required
    $phone_number_field = $_POST['phone'];        //not required
    $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 .= "Organization Name: ".clean_string($organization_name_field)."\n";
    $email_message .= "Contact Name: ".clean_string($contact_name_field)."\n";
    $email_message .= "City: ".clean_string($city_field)."\n";
    $email_message .= "State: ".clean_string($state_field)."\n";
    $email_message .= "Zip Code: ".clean_string($zipcode_field)."\n";   
    $email_message .= "Email: ".clean_string($email_field)."\n";
    $email_message .= "Telephone: ".clean_string($phone_number_field)."\n";


// create email headers
$headers = 'From: '.$contact_name_field."\r\n".
'Reply-To: '.$email_field."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);  
?>

<!-- include your own success html here -->

Thank you for contacting us. We will be in touch with you very soon.

<?php
}
?>

2 个答案:

答案 0 :(得分:3)

替换以下内容:

?>

<!-- include your own success html here -->

Thank you for contacting us. We will be in touch with you very soon.

<?php
}
?>

使用:

//Redirect user to another page
header('Location: email-success.php'); //Replace email-success.php with the page you want them to be redirected to!
}
?>

答案 1 :(得分:-1)

    <?php
if(isset($_POST['email'])) {

    // EDIT THE 2 LINES BELOW AS REQUIRED
    $email_to = "your@email.com";
    $email_subject = "Email Subject Goes Here";


    $organization_name_field = $_POST['organization'];  //required
    $contact_name_field = $_POST['name'];       //required
    $city_field = $_POST['city'];           //not required
    $state_field = $_POST['state'];           //not required
    $zipcode_field = $_POST['zip'];           //not required
    $email_field = $_POST['email'];           //not required
    $phone_number_field = $_POST['phone'];        //not required
    $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 .= "Organization Name: ".clean_string($organization_name_field)."\n";
    $email_message .= "Contact Name: ".clean_string($contact_name_field)."\n";
    $email_message .= "City: ".clean_string($city_field)."\n";
    $email_message .= "State: ".clean_string($state_field)."\n";
    $email_message .= "Zip Code: ".clean_string($zipcode_field)."\n";   
    $email_message .= "Email: ".clean_string($email_field)."\n";
    $email_message .= "Telephone: ".clean_string($phone_number_field)."\n";


// create email headers
$headers = 'From: '.$contact_name_field."\r\n".
'Reply-To: '.$email_field."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);  
?>

<!-- include your own success html here -->

<?php
header('Location: yoursuccesspage.php');
?>

<?php
}
?>

一旦成功,您只需要标题到新页面。