如何将“发件人电子邮件”更改为表单中的电子邮件

时间:2013-09-19 19:16:06

标签: php email web

我有以下表格,我一直在试图弄清楚如何将电子邮件地址更改为不同。

目前它正在使用php服务器和正在使用的电子邮件上的自动回复发送自动回复,它只是造成一个大混乱。任何帮助都会非常感激。

<?php



if(isset($_POST['submit'])) {



    //create an empty errors array

    $errors = array();

    //our form has been submitted

    if($_POST['name'] == "") {

        //the name field is empty

        $errors[] = "The name field is empty";

    }

    if($_POST['email'] == "") {

        //the email field is empty

        $errors[] = "The email field is empty";

    }

    if($_POST['comment'] == "") {

        //the comment field is empty

        $errors[] = "The comment field is empty";

    }




    if($_POST['phone'] == "") {

        //the comment field is empty

        $errors[] = "The phone field is empty";

    }


            if($_POST['passengers'] == "") {

        //the comment field is empty

        $errors[] = "The passengers field is empty";

    }



    if($_POST['destination'] == "") {

        //the comment field is empty

        $errors[] = "The destination field is empty";

    }

    if(!stripos($_POST['email'], '@')) {

        $errors[] = "The email address was not valid";

    }

    if(count($errors) == 0) {

        $sendto = "inquiry@maximtours.net";

        $title = "Contact Form";

        $email = $_POST['email'];

        $message = "Name: ".$_POST['name']. "\n".
            "Mail: ".$_POST['email']. "\n".
            "Date of Travel: ".$_POST['month'].". " .$_POST['day'].", " .$_POST['year'] ."\n".
            "Phone No: ".$_POST['phone']. "\n".
            "Number of Passengers: ".$_POST['passengers']. "\n".
            "Traveling From: ".$_POST['city']. "\n".
            "Destination: ".$_POST['destination']. "\n".
            "Comment: ".$_POST['comment']. "\n";


        $headers = "From: " . $_POST['email'] . "\r\n" .
            "Reply-To: " . $_POST['email'] . "\r\n" .
            "X-Mailer: PHP/" . phpversion();


           if(mail($sendto, $title, $message, $email, 'inquiry@maximtours.net'.$email)) {

                $success = true;

            } else {

                $success = false;

            }



    } 
}

?>
<?php

if(isset($_POST['submit'])) {

    if($success == true && count($errors) == 0) {

        echo "<h2>Thanks for getting in touch!</h2>";


    }

    if(count($errors) == 0 && $success == false && isset($_POST['submit'])) {

        echo '<h2>There was a problem with our form. Please email us directly via inquiry@maximtours.net.</h2>';

    }



    if(isset($_POST['submit']) && $success == false && count($errors) > 0) {

        echo "<ul>";

        foreach($errors as $e) {

            echo "<li>$e</li>";

        }

        echo "</ul>";

    }

}

?>

2 个答案:

答案 0 :(得分:0)

将mail()函数中的第5个参数更改为您想要的电子邮件地址作为发件人:电子邮件地址。

mail('to@blah.com','subject!','body!','From: from@blah.com','-f from@blah.com');

https://stackoverflow.com/a/179061/2701758

答案 1 :(得分:0)

我认为你需要一些改变

mail($sendto, $title, $message, $email, 'inquiry@maximtours.net'.$email)

将此更改为

mail($sendto, $title, $message, $headers);

以及您需要的任何地址,您可以设置$ header。