Простой Php-почтовик, пропавший без вести - PullRequest
2 голосов
/ 24 ноября 2011

Я скопировал несколько писем PHP и в какой-то момент все заработало.Но дело в том, что я думаю, что мне чего-то не хватает, мне нужно, чтобы окончательный вывод электронной почты отображался, как показано ниже:

Имя: [имя отправителя здесь]Тема: [тема здесь]Сообщение: [сообщение здесь]

Посмотрите, можно ли выполнить приведенный выше формат, я бы тоже хотел добавить поле ввода компании в какой-то момент.вот он php почтовик ниже:

<?php 
//print_r($_POST);
    if(isset($_POST['_save'])) {
        $name = $_POST['name'];
        $email = $_POST['email'];
        $message = $_POST['message'];
        $subject = $_POST['subject'];

        if (empty($name) || empty($email) || empty($subject) || empty($message)) {
            if (empty($name))
                $error['name'] = "Please enter your Full Name";
            if (empty($email))
                $error['email'] = "Please enter a valid Email Address";
            if (empty($subject))
                $error['subject'] = "Please Write a Subject";
            if (empty($message))
                $error['message'] = "lease write a message, inquiries or other concerns above";
        }
        else { //if not empty

            $headers="From: {$email}\r\nReply-To: {$email}"; //create headers for email
            mail('email@domain.com',$subject,$message,$headers); //mail the message;
            $success = "Thank you! You're email has been sent.";
            #done;
        }
    }
?>

Ответы [ 2 ]

3 голосов
/ 24 ноября 2011

Для вашего первого вопроса измените

mail('email@domain.com',$subject,$message,$headers);

на

$content="Name: ".$name."<br>Subject: ".$subject."<br>Message: ".$message;
mail('email@domain.com',$subject,$content,$headers);

Что касается вашего второго вопроса, как утверждает Ян, добавьте поле с названием компании в форму и сделайте в точноститак же, как с переменными имя / тема / сообщение.

2 голосов
/ 24 ноября 2011

Вы можете добавить данные компании в любое время, просто настроив следующий пример:

   $email_message = '
        Name: ' . $name . '<br />
        Subject: ' . $subject . '<br />
        Message: ' . $message . '
        ';


    $headers="From: {$email}\r\nReply-To: {$email}"; //create headers for email
    $semi_rand = md5(time());  
    $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";  

    $headers .= "\nMIME-Version: 1.0\n" .  
                "Content-Type: multipart/alternative; boundary=\"{$mime_boundary}\"";  

    $email_message .= "This is a multi-part message in MIME format.\n" .  
                    "Your email application may not support this format.\n\n" . 
                    "--{$mime_boundary}\n" .  
                    "Content-Type:text/html; charset=\"utf-8\"\n" .  
                    "Content-Transfer-Encoding: 8bit\n\n" . 
                    $email_message;

    $email = mail('email@domain.com',$subject,$email_message,$headers); //mail the message;
    if($email){
        $success = "Thank you! You're email has been sent.";
    }

Я немного скорректировал ваши заголовки в приведенном выше примере, потому что не каждый почтовый клиент будет принимать вашу электронную почту.Скажи мне, если это то, что тебе нужно.

...