HTML etiketlerini kullanabilirsiniz mümkün php e-posta göndererek

2 Cevap php

Ben PHP MySQL oluşturulan sonuç kümeleri üzerinden bir e-posta göndermek için çalışıyorum

Bu kodudur.

<?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!";
}

?>

Sorun sonuçlar tablo biçiminde görüntülenmesini istiyorsanız, olduğunu. Ama bunun yerine html etiketleri işleme, onlar da basılı alıyorsanız.

Tablo formatında e-posta almak için nasıl?

Teşekkürler.

2 Cevap

HTML olarak e-posta iletisi belirtmeniz gerekir. Bu deneyin:

$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))

Varsayılan e-postalar ile text/plain MIME türü kullanılarak gönderilir.

Eğer biçimlendirilmiş e-posta istiyorsanız bir text/plain ile bir MIME e-posta ve bir text/html bölümünü kullanmak gerekir.

Sen http://www.tuxradar.com/practicalphp/15/5/3 bir örnek bulabilirsiniz

Ayrıca yerine çok parçalı ve text/html, ama bu spam filtreleri ile yüksek puan eğilimi bir e-posta gönderebilirsiniz.