Почему данные mysql печатают только последнюю строку внутри тела письма? - PullRequest
0 голосов
/ 30 мая 2018

Я получаю письмо с заголовком и последней строкой.почему не все строки?

Вот мой полный код:

$email_from = 'info@email.com';
    $email_to = $row['email'];
    $email_subject = "The " . $row['event'] . " Registration";

    $email_message .= "Dear " . $row['lname'] . " " . $row['fname'] . "\n" ;
    $email_message .= "This is a notice that an invoice for your order has been generated on " . $row['reg_date'] . "\n" ;
    $email_message .= "Your payment method is: " . $row['payment'] . "\n" ;
    $email_message .= "Invoice: " . $row['id'] . "\n" ;
    $email_message .= "Status: Unpaid \n" ;
    $email_message .= "<strong>Invoice Items</strong> \n" ;
    $email_message .= "Event: " . $row['event'] . "\n" ;
    $email_message .= "<hr> \n" ;
    $email_message .= "<hr> \n" ;
    $email_message .= "Here is your Invoice id: ".$row['ref']. "\n" ;

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

Я хочу отправить электронное письмо вот так

Dear Dasgupta Arnab
This is a notice that an invoice for your order has been generated on: date
Your payment method is: whatever
Invoice: 123456
Status: Unpaid 
Invoice Items 
Event: event name
Here is your Invoice: refid

, но я получаю только так вэлектронная почта

Here is your Invoice: refid

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Я попробовал этот код:

$row = ['email' => 'test@test.com', 'lname' => 'Testname', 'payment' => 'Invoice', 'id' => '1', 'event' => 'sold', 'ref' => '111222333'];

$email_from = 'info@email.com';
$email_to = $row['email'];
$email_subject = 'The ' . $row['event'] . ' Registration';

$email_message = '';
$email_message .= 'Dear ' . $row['lname'] . ' ' . $row['fname'] . "\n";
$email_message .= 'This is a notice that an invoice for your order has been generated on ' . $row['reg_date'] . "\n";
$email_message .= 'Your payment method is: ' . $row['payment'] . "\n";
$email_message .= 'Invoice: ' . $row['id'] . "\n";
$email_message .= "Status: Unpaid\n";
$email_message .= "<strong>Invoice Items</strong>\n";
$email_message .= 'Event: ' . $row['event'] . "\n";
$email_message .= "<hr>\n";
$email_message .= "<hr>\n";
$email_message .= 'Here is your Invoice id: ' . $row['ref'] . "\n";

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

И сгенерировал электронное сообщение в формате raw следующим образом:

Received: from spooler by 127.0.0.1 (Mercury/32 v4.62); 30 May 2018 08:51:35 +0200
Received: from L-PC.DOMAIN.LOCAL (127.0.0.1) by 127.0.0.1 (Mercury/32 v4.62) ID MG000001;
   30 May 2018 08:51:33 +0200
Date: Wed, 30 May 2018 08:51:33 +0200
Subject: The sold Registration
To: test@test.com
X-PHP-Originating-Script: 0:index.php
From: info@email.com
Reply-To: info@email.com
X-Mailer: PHP/7.2.3
Message-ID: <3DE5C9E94CE0@127.0.0.1>

Dear Testname 
This is a notice that an invoice for your order has been generated on 
Your payment method is: Invoice
Invoice: 1
Status: Unpaid
<strong>Invoice Items</strong>
Event: sold
<hr>
<hr>
Here is your Invoice id: 111222333

Если это не работает на вашем сайте, то есть какая-то другая проблема.

0 голосов
/ 30 мая 2018

Попробуйте:

    $email_from = 'info@email.com';
$email_to = $row['email'];
$email_subject = "The " . $row['event'] . " Registration";
$email_message="";
$email_message .= "Dear " . $row['lname'] . " " . $row['fname'] . "\n" ;
$email_message .= "This is a notice that an invoice for your order has been generated on " . $row['reg_date'] . "\n" ;
$email_message .= "Your payment method is: " . $row['payment'] . "\n" ;
$email_message .= "Invoice: " . $row['id'] . "\n" ;
$email_message .= "Status: Unpaid \n" ;
$email_message .= "<strong>Invoice Items</strong> \n" ;
$email_message .= "Event: " . $row['event'] . "\n" ;
$email_message .= "<hr> \n" ;
$email_message .= "<hr> \n" ;
$email_message .= "Here is your Invoice id: ".$row['ref']. "\n" ;
// create email headers
$headers = 'From: '.$email_from."\r\n".
    'Reply-To: '.$email_from."\r\n" .
    'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...