0

HTMLコードを含む変数からPHP経由でechotomail関数を送信しています。奇妙なことは、これは

<����}im�

文字列の後に表示されます。しかし、私はもうそれを操作しません。メール関数の文字セット(添付ファイル)は、HTMLコードの文字セットと同じです。

4

4 に答える 4

2

エンコードの問題です。バイナリ コードを表示しようとしている可能性がありますか?

HTML を表示したい場合は、htmlentities を使用する必要があります。

// 出力: 'quote' は

<b>太字</b> エコー

htmlentities($str);

于 2008-11-18T21:51:45.367 に答える
0

これは私が抱えている問題です。私はインターネットソースからのコードを使用し、$ bodyが請求書を生成し、これが電子メールを送信します。これらの文字はHTMLソースファイルの最後にありますが、なぜそれらが地獄なのかわかりません。そこの :(

$to = 'email@email.com';
$subject = 'Invoice';
$random_hash = md5(date('r', time()));
$headers = "From: mymail@mymail.com\r\nReply-To: webmaster@example.com";
$headers .= "\r\nContent-Type: multipart/mixed; boundary=\"PHP-mixed-".$random_hash."\"";
$body=rtrim(chunk_split(base64_encode($body))); 
//define the body of the message.
ob_start(); //Turn on output buffering
?>
--PHP-mixed-<?php echo $random_hash; ?> 
Content-Type: multipart/alternative; boundary="PHP-alt-<?php echo $random_hash; ?>"

--PHP-alt-<?php echo $random_hash; ?> 
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit

Hello World!!!
This is simple text email message.

--PHP-alt-<?php echo $random_hash; ?> 
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: 7bit

Text Emailu.

--PHP-alt-<?php echo $random_hash; ?>--

--PHP-mixed-<?php echo $random_hash; ?> 
Content-Type: text/html; charset="UTF-8"; name="faktura.html" 
Content-Transfer-Encoding: base64 
Content-Disposition: attachment 

<?php echo htmlentities($body); ?>
--PHP-mixed-<?php echo $random_hash; ?>--

<?php
//copy current buffer contents into $message variable and delete current output buffer
$message = ob_get_clean();
//send the email
$mail_sent = @mail( $to, $subject, $message, $headers );
于 2008-11-20T17:12:31.313 に答える
0

電子メールの処理にhtmlMimeMailクラスの使用を検討できます。したがって、厄介な電子メールの内部を回避できます。

于 2008-11-19T02:49:44.113 に答える
0

これらの文字は、おそらく文字列内の「ジャンク」データです。これらの文字列がどこから来ているかに応じて、HTML ページの後のソケット内の追加の TCP データ、または HTML ページの後のファイル内の追加のデータ、または他の誰かが実際にこれらの文字を HTML ページ (おそらくファイル) に挿入した可能性があります。誤って破損したか、その他の理由)。

于 2008-11-18T21:52:33.620 に答える