1

この電子メール スクリプトでは英語以外の文字に問題があります。gmail アカウントに電子メールを送信するようにスクリプトを設定した場合、問題はありません。しかし、自分のドメイン アカウントに電子メールを送信するようにスクリプトを設定し、Windows Live メールまたは Microsoft Outlook で電子メールを開くと、電子メールを読み取ることができません。エンコード メニューに移動して、utf-8 を選択する必要があります。そうすれば、メールを読むことができます。

iMac メールクライアントでメールを開けば問題ありません。

私の顧客はこれを大きな問題と見なしており、私に解決してほしいと思っています。誰でも助けることができますか?

コードは次のとおりです。

<?php
// send the form to the specify email

// CONFIG VARS
$subject = "mysite.com | contact form";
$to = "myaccount@somemail.com";
$from = 'another@somemail.com';


//data
$msg = "Name: "  .$_POST['namesup']    ."<br>\n";
$msg .= "Email: "  .$_POST['emailsup']    ."<br>\n";
$msg .= "Phone: "  .$_POST['phonesup']    ."<br>\n";
$msg .= "Message: "  .$_POST['yourtextsup']    ."<br>\n";

//Headers
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=UTF-8\r\n";
$headers .= "From: <".$from. ">" ;


//send
mail($to, $subject, $msg, $headers);
?>

どんな助けでも大歓迎です。ゾラン

4

3 に答える 3

1

このコードをチェックアウトしてください。

<?php

$subject = "mysite.com | contact form";
$to = "myaccount@somemail.com";
$from = 'another@somemail.com';

 $msg = '<html>
            <head>
            </head>
                <body>
                <p>
                               Name: ".$_POST['namesup']."<br>
                               Email: ".$_POST['emailsup']."<br>
                               Phone: ".$_POST['phonesup']."<br>
                               Message: ".$_POST['yourtextsup']."<br>
                    </p>
                </body>
        </html>';

    $headers = 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=UTF-8' . "\r\n";
    $headers .= "X-Mailer: PHP \r\n";
    $headers .= "From: <".$from. ">" ;

    mail($to,$subject,$msg,$headers);
?>

この行 $headers = 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=UTF-8' . "\r\n";は、アラビア語などの問題を解決します。

于 2013-01-17T11:25:44.280 に答える
0

スクリプトの文字セットを次のように変更してみてください。

<?php
// send the form to the specify email

// CONFIG VARS
$subject = "mysite.com | contact form";
$to = "myaccount@somemail.com";
$from = 'another@somemail.com';


//data
$msg = "Name: "  .$_POST['namesup']    ."<br>\n";
$msg .= "Email: "  .$_POST['emailsup']    ."<br>\n";
$msg .= "Phone: "  .$_POST['phonesup']    ."<br>\n";
$msg .= "Message: "  .$_POST['yourtextsup']    ."<br>\n";

//Headers
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1";
$headers .= "From: <".$from. ">" ;


//send
mail($to, $subject, $msg, $headers);
?>
于 2013-01-17T11:20:29.707 に答える
0

<html>メッセージがとタグを含む有効な HTML であることを確認し<head>、タグも必ず含めることをお勧めします<meta http-equiv="Content-Type" content="text/html charset=UTF-8" />。そう:

//data
$msg = '<html><head><meta http-equiv="Content-Type" content="text/html charset=UTF-8" /></head><body>';
$msg .= "Name: "  .$_POST['namesup']    ."<br>\n";
$msg .= "Email: "  .$_POST['emailsup']    ."<br>\n";
$msg .= "Phone: "  .$_POST['phonesup']    ."<br>\n";
$msg .= "Message: "  .$_POST['yourtextsup']    ."<br>\n";
$msg .= '</body></html>';
于 2013-01-17T11:14:46.163 に答える