2016-06-15 4 views
0

PHPサーバ上でmail()コマンドでhtmlを送信するのに問題があります。電子メールは送信されますが、htmlコードはhtmlとして表示されません。どうすればこの問題を解決できますか? 以下はサーバーから送信されたコードですが、メールブラウザではHTMLとして表示されません。以下はサーバのメールの問題

<html><table border="1"><tr><th>User Level</th><th>Number of Users</th></tr><tr><td>0</td><td>0</td></tr><tr><td>1</td><td>2</td></tr><tr><td>2</td><td>1</td></tr></table></html> 

は、メッセージの下

function get_tbl_lvl(){ 
$i=0; 
$html .= '<table border="1"><tr><th>User Level</th><th>Number of Users</th></tr>'; 
while($i<3){ 
    $html .= '<tr><td>'.$i.'</td><td>'; 
    $num = num_level($i); 
    if($num == -1){ 
     $html .= 'db fail'; 
    }else{ 
     $html .= $num; 
    } 
    $html .= '</td></tr>'; 
    $i++; 
} 
$html .= '</table>'; 
return $html; 
} 

のコンテンツを取得する方法を、コンテンツを送信するためのコードです

$msg = '<html>'.get_tbl_lvl().'</html>'; 
mail($to,$subject,$msg,$headers); 
echo get_tbl_lvl(); 
+0

コードoあなたはそれをどのように送っているのですか? – andrewsi

+0

はHTMLコードを送信するためのコードを追加しましたが、メッセージは正しく表示されません。正しく表示されていません。 – CHouse95

+0

ヘッダーを設定してHTMLメール –

答えて

0

あなたはそれを動作させるためのHTMLヘッダーを設定する必要があります

<?php 
    $to = '[email protected]'; 
    $subject = 'Subject goes here'; 
    $message = '<html style="color:red">HTML Content HERE</html>'; 
    $headers = 'MIME-Version: 1.0' . "\r\n"; 
    //This is where you let it be known it's html 
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 

    // Mail it 
    mail($to, $subject, $message, $headers);