質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

0回答

1668閲覧

php 画像を埋め込んだメール(htmlメール)を送信したい

mikeko0901

総合スコア227

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2020/12/17 13:51

phpを使って構築しております。
要件で、画像(QRコード)を埋め込んだメールを送りたい というものがあり、
今はphpのmail関数でメールを送信していますが、ライブラリを使って送った方が簡単そうとのことでしたので、試してみましたがうまく行きません。
以下の2つを試しました。

【1, PHPMailerを使用した方法】
https://into-the-program.com/phpmailer-gmail/
のコードをそのままコピペし、認証部分を自分のものに変更しましたが、

SMTP Error: Could not authenticate.

というエラーが出てしまいうまくいきません。
※メッセージ全文

2020-12-17 13:46:52 SERVER -> CLIENT: 220 smtp.gmail.com ESMTP n2sm3493966qkf.37 - gsmtp 2020-12-17 13:46:52 CLIENT -> SERVER: EHLO 0.0.0.0 2020-12-17 13:46:52 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [34.238.40.110] 250-SIZE 35882577 250-8BITMIME 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250 SMTPUTF8 2020-12-17 13:46:52 CLIENT -> SERVER: STARTTLS 2020-12-17 13:46:52 SERVER -> CLIENT: 220 2.0.0 Ready to start TLS 2020-12-17 13:46:52 CLIENT -> SERVER: EHLO 0.0.0.0 2020-12-17 13:46:52 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [34.238.40.110] 250-SIZE 35882577 250-8BITMIME 250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250 SMTPUTF8 2020-12-17 13:46:52 CLIENT -> SERVER: AUTH LOGIN 2020-12-17 13:46:52 SERVER -> CLIENT: 334 VXNlcm5hbWU6 2020-12-17 13:46:52 CLIENT -> SERVER: [credentials hidden] 2020-12-17 13:46:52 SERVER -> CLIENT: 334 UGFzc3dvcmQ6 2020-12-17 13:46:52 CLIENT -> SERVER: [credentials hidden] 2020-12-17 13:46:52 SERVER -> CLIENT: 535-5.7.8 Username and Password not accepted. Learn more at 535 5.7.8 https://support.google.com/mail/?p=BadCredentials n2sm3493966qkf.37 - gsmtp 2020-12-17 13:46:52 SMTP ERROR: Password command failed: 535-5.7.8 Username and Password not accepted. Learn more at 535 5.7.8 https://support.google.com/mail/?p=BadCredentials n2sm3493966qkf.37 - gsmtp 2020-12-17 13:46:52 SMTP Error: Could not authenticate. 2020-12-17 13:46:52 CLIENT -> SERVER: QUIT 2020-12-17 13:46:52 SERVER -> CLIENT: 221 2.0.0 closing connection n2sm3493966qkf.37 - gsmtp 2020-12-17 13:46:52 SMTP Error: Could not authenticate. Message could not be sent. Mailer Error: SMTP Error: Could not authenticate.

googleアカウントで「安全性の低いアプリの許可を有効にする」を有効にすると、同じようなエラーが出ます。
※安全性の低いアプリの許可を有効」にした後のエラーメッセージ全文

2020-12-17 13:48:38 SERVER -> CLIENT: 220 smtp.gmail.com ESMTP d190sm3590772qkc.14 - gsmtp 2020-12-17 13:48:38 CLIENT -> SERVER: EHLO 0.0.0.0 2020-12-17 13:48:38 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [34.238.40.110] 250-SIZE 35882577 250-8BITMIME 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250 SMTPUTF8 2020-12-17 13:48:38 CLIENT -> SERVER: STARTTLS 2020-12-17 13:48:38 SERVER -> CLIENT: 220 2.0.0 Ready to start TLS 2020-12-17 13:48:38 CLIENT -> SERVER: EHLO 0.0.0.0 2020-12-17 13:48:38 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [34.238.40.110] 250-SIZE 35882577 250-8BITMIME 250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250 SMTPUTF8 2020-12-17 13:48:38 CLIENT -> SERVER: AUTH LOGIN 2020-12-17 13:48:38 SERVER -> CLIENT: 334 VXNlcm5hbWU6 2020-12-17 13:48:38 CLIENT -> SERVER: [credentials hidden] 2020-12-17 13:48:38 SERVER -> CLIENT: 334 UGFzc3dvcmQ6 2020-12-17 13:48:38 CLIENT -> SERVER: [credentials hidden] 2020-12-17 13:48:38 SERVER -> CLIENT: 534-5.7.14 534-5.7.14 Please log in via your web browser and then try again. 534-5.7.14 Learn more at 534 5.7.14 https://support.google.com/mail/answer/78754 d190sm3590772qkc.14 - gsmtp 2020-12-17 13:48:38 SMTP ERROR: Password command failed: 534-5.7.14 534-5.7.14 Please log in via your web browser and then try again. 534-5.7.14 Learn more at 534 5.7.14 https://support.google.com/mail/answer/78754 d190sm3590772qkc.14 - gsmtp 2020-12-17 13:48:38 SMTP Error: Could not authenticate. 2020-12-17 13:48:38 CLIENT -> SERVER: QUIT 2020-12-17 13:48:38 SERVER -> CLIENT: 221 2.0.0 closing connection d190sm3590772qkc.14 - gsmtp 2020-12-17 13:48:38 SMTP Error: Could not authenticate. Message could not be sent. Mailer Error: SMTP Error: Could not authenticate.

【2, PEARのMailパッケージを使用した方法】
https://vertys.net/php-get-ready-pear-mail-send/
を参考に、PEARをインストールして試してみました。
が、エラーが消えず、断念してしまいました。。

htmlメールを送る方法が他によいものがあればご教示いただけますと嬉しいです。

そもそも、htmlメールは、例えばSendGridのようなメールサーバーサービスを通して送った方がよいのでしょうか。そのようなご意見があればそのような案をクライアントに出したいと思います。

アドバイスいただけますと幸いです。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2020/12/18 05:05

> SMTP Error: Could not authenticate. は、gmail 側での認証エラーですね。 google アカウントで「安全性の低いアプリの許可」や「アプリ パスワード」を使っていない場合は、アクセスできない場合がありますが、アカウントの設定はどうなっていますか?
mikeko0901

2020/12/18 13:27

メッセージありがとうございます。 安全性の低いアプリの許可はONにしていますが、アプリパスワードは初めて聞きました…ので、やっていません。 こちらのことでしょうか? https://support.google.com/accounts/answer/185833?hl=ja こちらを設定し、このパスワードをコード内のパスワードにすればよいのでしょうか??
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問