ホームページ > バックエンド開発 > PHPチュートリアル > php_PHP チュートリアルの PHPMailer を使用して添付ファイル付きのメールを送信する方法

php_PHP チュートリアルの PHPMailer を使用して添付ファイル付きのメールを送信する方法

WBOY
リリース: 2016-07-13 16:56:15
オリジナル
1201 人が閲覧しました

PHP 開発では PHPMailer を使用して電子メールを送信するのが一般的です。この方法は、PHP メールよりもはるかに簡単に使用できます。PHPMailer が添付ファイル付きの電子メールを送信する方法を見てみましょう。

.まず http://phpmailer.worxware.com/ にアクセスして、パッケージの最新バージョンをダウンロードします
2. ダウンロードが完了したら、class.phpmailer.php と class.smtp.php の 2 つのクラスを見つけて、独自のディレクトリに配置します。
3. 次に、新しい php ファイルを作成し、phpmail_jiucool.php
という名前を付けます。 4.phpmail_jiucool.phpの内容は以下の通りです:


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/631600.html技術記事 PHP 開発では、PHPMailer を使用して電子メールを送信するのが一般的です。この方法は、PHP メールよりもはるかに簡単に使用できます。PHPMailer が添付ファイル付きの電子メールを送信する方法を見てみましょう。 .まず...
コードは次のとおりです コードをコピー

function postmail_jiucool_com($to,$subject = "",$body = ""){
//著者:Jiucool ウェブサイト: http://www.jiucool.com
// $to は受信者のアドレスを表します $subject はメールのタイトルを表します $body はメールの本文を表します
//error_reporting(E_ALL);
error_reporting(E_STRICT);
Date_default_timezone_set("Asia/Shanghai");//東巴地区のタイムゾーンを設定します
require_once('class.phpmailer.php');
Include("class.smtp.php"); $mail = new PHPMailer(); //新しいPHPMailerオブジェクトが出てきます
$body = eregi_replace("[]",'',$body) //メール内容の必要なフィルタリングを実行します
$mail->CharSet ="UTF-8";//メールのエンコーディングを設定します。デフォルトは ISO-8859-1 です。中国語を送信する場合は、これを設定する必要があります。そうしないとコードが文字化けします
$mail->IsSMTP() // SMTP サービスを使用するように設定します
$mail->SMTPDebug = 1; $mail->SMTPDebug = 1; // SMTP デバッグ機能を有効にする                                                                                                                                                                                                                 $mail->SMTPAuth = true; $mail->SMTPAuth = true; // SMTP認証機能を有効にする $mail->SMTPSecure = "ssl"; $mail->SMTPSecure = "ssl"; $mail->Host = "smtp.googlemail.com" // SMTP サーバー
; $mail->Port = 465; // SMTPサーバーのポート番号
$mail->Username = "SMTP サーバーのユーザー名" // SMTP サーバーのユーザー名
; $mail->Password = "SMTP サーバーのパスワード" // SMTP サーバーのパスワード
; $mail->SetFrom('admin#jiucool.com などの送信者のアドレス #@ に置き換えてください', '送信者の名前');
$mail->AddReplyTo("メールの返信アドレス、例: admin#jiucool.com #replace with @","メールに返信した人の名前");
$mail->件名 = $subject;
$mail->AltBody = "メッセージを表示するには、HTML 互換の電子メール ビューアを使用してください! - www.jiucool.com から" // オプションで、コメントアウトしてテストします
$mail->MsgHTML($body);
$アドレス = $to;
$mail->AddAddress($address, "受信者名");
//$mail->AddAttachment("images/phpmailer.gif"); // 添付ファイル
//$mail->AddAttachment("images/phpmailer_mini.gif"); // 添付ファイル
If(!$mail->Send()) {
echo "メーラー エラー: " . $mail->ErrorInfo;
} その他 {
echo "メッセージが送信されました! おめでとうございます、メールは正常に送信されました!";
}
}



注:

phpmailerで添付ファイルを追加する場合、添付ファイルのサフィックスを添付ファイル名に指定する必要があります。添付ファイルのサフィックスが指定されていない場合、デフォルトの添付ファイルのサフィックスは.txtになります。
たとえば

コードは次のとおりです コードをコピー
$mail ->AddAttachment('include/id.csv','att');//

添付ファイルのパスと名前
上記のように添付ファイルを追加して送信すると、最終的に受信する添付ファイルは att.txt になる可能性があります。
AddAttachmentでは添付ファイルのエンコード方法と添付ファイルの種類を設定できます。例えば上記の添付ファイルの追加を

に設定することもできます。
コードは次のとおりです コードをコピー
$mail -> AddAttachment('include/id.csv','att.csv',"binary","text/カンマ区切り値");//

添付ファイルのパスと名前、
添付ファイルにはおそらくいくつかのエンコード方法があります: 8 ビット、base64、バイナリ、および quote-printable エンコードをサポートします

CSV で受け入れられる MIME タイプ
· アプリケーション/オクテットストリーム
· テキスト/カンマ区切り値 (推奨)
· テキスト/CSV
したがって、csv形式ファイルの添付ファイルの種類は上記3種類のいずれかになります

コードは次のとおりです コードをコピー

require_once('include/PHPMailer/class.phpmailer.php') //PHPMAILER クラスをインポートします
$mail = new PHPMailer() // インスタンスを作成します
; $mail -> CharSet='utf-8' //文字セットを設定します
; $mail -> SetLanguage('ch','include/PHPMailer/ language/') // 言語の種類と言語ファイルが存在するディレクトリを設定します
$mail -> IsSMTP() //SMTP メソッドを使用して送信します
$mail -> SMTPAuth = true; // サーバーが SMTP 認証を必要とするかどうかを設定します
$mail -> ホスト = SMTP_SERVER
; $mail -> ポート = SMTP_SERVER_PORT
; $mail -> From = SMTP_USER_MAIL //送信者のメールアドレス
$mail -> FromName = 'jasonxu' //SMTP ホストの送信者のユーザー名
; $mail -> ユーザー名 = SMTP_USER_NAME //送信者の名前
; $mail -> Password = SMTP_USER_PASS; //SMTP ホストの送信者のパスワード
; $mail -> Subject = 'テストメールのタイトル' // メールの件名
; $mail -> AltBody = 'text/html' //メール本文がHTMLに対応していない場合の代替表示を設定します
$mail -> Body = 'メールコンテンツのテスト';//メールコンテンツが作成されます
$mail -> IsHTML(true); // HTML メールですか? $mail ->AddAddress('chinajason2008#gmail.com','jasonxu') //受信者のアドレスと名前
$mail ->AddReplyTo('chinajason2008#gmail.com','jasonxu') //返信時に受信者が返信するアドレスと名前

$mail ->AddAttachment('include/id.csv','att.csv');//添付ファイルのパスと名前
if(!$mail -> Send()) //メールを送信
var_dump($mail -> ErrorInfo); // 送信されたエラーメッセージを表示します

このメッセージを追加するだけで、添付ファイル付きのメールで送信できます

$mail -> AddAttachment('include/id.csv','att.csv');//添付ファイルのパスと名前

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート