2016-02-17 2 views
1

Я изменил следующий сценарий. Кажется, что все работает, кроме человека, который отправляет форму («to2») получает электронное письмо с сообщением («message2» - с одиночными простыми строками), за которым следует («сообщение» - с двойными космическими линиями).php mail() отправка двух разных сообщений для отправки другим сторонам

Получатели ('message') работают так, как должны, только получая («сообщение» - с помощью одиночных космических линий).

МОЙ ОБЪЕКТ предназначен для ('to2') только для получения ('message2'), за которым не следует ('сообщение'). Я попытался позиционировать строку (message2) в разных местах логики скриптов, но я продолжаю получать те же результаты или сломаться. Любая помощь с логикой оценивается.

Вот сценарий ...

<?php 
session_start(); 
?> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<meta name="viewport" content="width=500"> 
<title>EXAMPLE</title> 
</head> 
<body> 

<?php 

if(isset($_POST['Submit'])) { 
$ip_address = $_SERVER['REMOTE_ADDR']; 
    $Subject = 'TEST'; 
    $Subject2 = 'SUCCESS'; 
    $A1 = $_POST['A1']; 
    $Name = $_POST['Name']; 
    $Phone = $_POST['Phone']; 
    $Email = $_POST['Email']; 
    $message = $_POST['message']; 
    $message2 = $_POST['message2']; 

// Type in your Email address to receive the mail 
$to = '[email protected]'; 
$to2 = $Name.' <'.$Email.'>'; 

    if($Name == "" or $Phone == "" or $Email == "") { 
     echo 'One or more fields has not been filled out.<br> 
     Click on your browser back button once and try again.'; 
    } 
    elseif(!filter_var($Email, FILTER_VALIDATE_EMAIL)) { 
     echo 'The Email address could not be validated.<br> 
     Click on your browser back button once and verify your Email address.'; 
    } 
    else { // All checks passed 

     $headers = "From: ".$Name." <".$Email.">\r\n"; 
     $headers .= "Bcc: [VENDOREMAILS]\r\n"; 
     $headers .= "MIME-Version: 1.0\r\n"; 
     $headers .= "Content-Type: text/html; charset=utf-8\r\n"; 
     $headers2 = "From: Support <[email protected]>\r\n"; 
     $headers2 .= "MIME-Version: 1.0\r\n"; 
     $headers2 .= "Content-Type: text/html; charset=utf-8\r\n"; 
     $message = " 
Subject: $Subject<br> 
Question: $A1<br> 
Name: $Name<br> 
Phone: $Phone<br> 
Email: $Email 
"; 
     $message2 = " 
Subject: $Subject2<br> 
Question: $A1<br> 
Name: $Name<br> 
Phone: $Phone<br> 
Email: $Email 
" 
.nl2br($message); 
     $sendMail = mail($to, $Subject, $message, $headers); 
     if($sendMail) { 
      echo "THANK YOU FOR YOUR SUBMISSION"; 
      mail($to2, $Subject2, $message2, $headers2); 
     } 
     else { 
      echo "An error occured and the mail could not be sent.<br> 
Please try again"; 
     } 
    } 
} 
else { 
    header("location:example.html"); 
}  
?> 

</body> 
</html> 
+0

Я сделал то, что вы предлагали, а также заметил, что мне нужно добавить точку с запятой в конце переменной сообщения. Все работает так, как должно. Спасибо за помощь. –

ответ

2

Удалить код

.nl2br($message); 

с конца определения $ message2. Я думаю, что это нужно.

+0

См. Комментарий выше –