отправка электронной почты в php не может использовать теги HTML - PullRequest
0 голосов
/ 20 марта 2010

Я пытаюсь отправить электронное письмо через наборы результатов, сгенерированные в MySQL в PHP

Это код.

<?php
$txtMsg = '<table><th>Name</th>';
$txtMsg = '';
  mysql_connect("localhost", "root", "pop") or die(mysql_error());
      mysql_select_db("jpd") or die(mysql_error());
      $oustanding = mysql_query("select Name from results") or die(mysql_error());  
      $num=mysql_num_rows($oustanding);

      while($row1 = mysql_fetch_array( $oustanding )) {
          ?>
        <tr>
            <td><h3><?php echo $row1['Name']; ?></h3></td>

        </tr>
<?php
$txtMsg .= "<tr><td>".$row1['Name']."</td></tr>";
}     


ini_set ( "SMTP", "xy.domain.com" ); 
$mail_to= 'someone@domain.com';
$mail_from='someone@domain.com';
$mail_sub='OutStanding Results';
$mail_mesg=$txtMsg;

//Check for success/failure of delivery 
if(mail($mail_to,$mail_sub,$mail_mesg,"From: $mail_from"))
echo "<br><br>Email Successfully Sent!";
else
echo "<br><br>Error Sending Email!";
}

?>

Проблема в том, что я хочу, чтобы результаты отображались в табличном формате. Но вместо обработки тегов html они также печатаются.

Как получить письмо с табличным форматом?

Спасибо.

Ответы [ 2 ]

3 голосов
/ 20 марта 2010

Вам необходимо указать свое электронное сообщение в формате HTML. Попробуйте это:

$headerFields = array(
    "From: $mail_from",
    "MIME-Version: 1.0",
    "Content-Type: text/html;charset=iso-8859-1"
);
mail($mail_to, $mail_sub, $mail_mesg, implode("\r\n", $headerFields))
1 голос
/ 20 марта 2010

По умолчанию электронные письма отправляются с использованием типа text/plain MIME.

Если вы хотите отформатировать электронную почту, вы должны использовать составную электронную почту MIME с text/plain и text/html частью.

Вы можете найти пример на http://www.tuxradar.com/practicalphp/15/5/3

Вы также можете отправить электронное письмо text/html вместо multipart, но это имеет тенденцию получать высокие оценки с помощью спам-фильтров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...