-3

私はsmtpメールボックスにimap php関数を使用しています。複数の添付ファイルを含むメールを送信すると、imap_mail()機能を使用するファイルはすべての添付ファイルとともに適切に送信されます。しかし、[送信済みアイテム] ボックスに表示すると、すべてのメール テキストが表示されますが、添付ファイルは実際のファイルではなく、テキスト ファイルとして表示されます。

sent imap_mail()関数と関数に同じヘッダー コードを使用しimap_append()ます。この予期しない動作が発生するのはなぜですか?

4

2 に答える 2

1

これは、エンコードの問題である可能性があります。

メールとして送信する部分がいくつかあります。

例えば:

体の部分:

"Content-Type: text/html; charset="iso-8859-1"
"Content-Transfer-Encoding: 7bit"
...  

 
添付部分 (例: jpeg 画像):

"Content-Type: image/jpg; name="attachment_1.jpg"
"Content-Transfer-Encoding: base64"
"Content-disposition: attachment; file="attachment_1.jpg"
  
chunk_split(base64_encode($file)) // PHP function to base64 encode the file
...

そこにはたくさんのチュートリアルがあります。それらをグーグルして、あなたの経験レベルに合ったものを選んでください.

 
さらに、PHP のネイティブ mail の代わりにSwiftMailerのようなものの使用を開始することをお勧めします。これは、mail() で送信されたメールが、GMail などの最も一般的なメール プロバイダーのスパム フォルダーに配置されるためです。メーラー クラスは、より広範な量も提供します。特に調整のための調整可能な機能の。

 
こちらのドキュメントをご覧ください:
http://swiftmailer.org/docs/messages.html#attaching-files

StackOverflow に関するこの特定の回答も確認してください:
https://stackoverflow.com/a/4671714/2493918

幸運を!

于 2013-08-08T13:21:32.433 に答える
0

これに感謝しますが、このリンクhttps://stackoverflow.com/a/4671714/2493918に Swift_Connection_SMTP(MAIL_SMTP_URL, MAIL_SMTP_PORT) 関数を見ました。しかし、smtp 接続用のこの関数パラメーターに電子メール ID とパスワードを入力する場所がわかりません。

于 2013-08-09T06:15:54.090 に答える