wordpressでPHPMaillerを使って注文フォームを作りました。(プラグインだと叶えられない要望があり)
送信すると「成功した」とメッセージが出るのですが、送信先が
・独自ドメインでとったアドレス(info@〇〇.com)の場合、受信できる
・gmail(〇〇@gmail.com)に設定すると、受信できない
XserverのSMTPを使っています。
PHPmailerの設定は以下のようなコードです。
<?php use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\SMTP; use PHPMailer\PHPMailer\Exception; session_start(); require_once( dirname( __FILE__ ) . '/wp-load.php' ); get_header(); ?> <main class="Contact"> <div class="Contact"> <div class="Contact_phpReport"> <?php $subject = "お問い合わせ"; $sessions = $_SESSION['menu']; $bodyhead = implode("\n",$sessions); $body = '[注文内容]'."\n".implode("\n",$sessions)."\n\n" .'[お名前]'."\n".$_SESSION['name']."\n\n" .'[メールアドレス]'."\n".$_SESSION['mail']."\n\n" .'[電話番号]'."\n".$_SESSION['tel']."\n\n" .'[本文]'."\n".$_SESSION['text']."\n\n\n\n" .'このメールはホームページのお問い合わせフォームから送信されました。'; $fromname = $_SESSION['name']; $fromaddress = $_SESSION['mail']; $smtp_user = "kaga@takeout-dish.com"; $smtp_password = "RKbIznuX1"; require_once("phpmailer/vendor/autoload.php"); require 'phpmailer/vendor/phpmailer/phpmailer/language/phpmailer.lang-ja.php'; $mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPDebug = 3; // debugging: 1 = errors and messages, 2 = messages only $mail->SMTPAuth = true; $mail->CharSet = 'utf-8'; $mail->SMTPSecure = 'ssl'; $mail->Host = "sv10113.xserver.jp"; $mail->Port = 465; $mail->IsHTML(false); $mail->Username = $smtp_user; $mail->Password = $smtp_password; $mail->SetFrom($smtp_user); $mail->From = $fromaddress; $mail->Subject = $subject; $mail->Body = $body; $to = '〇〇@gmail.com'; $mail->addAddress($to); $mail->addReplyTo($fromaddress, $fromname); if( !$mail -> Send() ){ $message = "Message was not sent<br/ >"; $message .= "Mailer Error: " . $mailer->ErrorInfo; } else { $message = "お問い合わせありがとうございました。以下の内容で送信されました。"; } ?> </div> <div class="Contact_message"> <section class="Contact_comfirm"> <p><?php echo $message; ?></p> <table class="Contact_comfirm_table"> <tr class="Contact_comfirm_table_item"> <th>注文内容:</th> <td> <div class=""> <?php $sessions = $_SESSION['menu']; foreach($sessions as $sessionmenu): ?> <span><?php echo $sessionmenu; ?></span> <?php endforeach; ?> </div> </td> </tr> <tr class="Contact_comfirm_table_item"> <th>氏名:</th> <td><?php echo $_SESSION['name']; ?></td> </tr> <tr class="Contact_comfirm_table_item"> <th>TEL:</th> <td><?php echo $_SESSION['tel']; ?></td> </tr> <tr class="Contact_comfirm_table_item"> <th>E-mail:</th> <td><?php echo $_SESSION['mail']; ?></td> </tr> <tr class="Contact_comfirm_table_item"> <th>お問い合わせ内容:</th> <td><?php echo $_SESSION['text']; ?></td> </tr> </table> </section> </div> <!-- <input type="button" class="btn btn-success" value="自動的に戻らない場合は押してください。" onClick="location.href='index.html'"> --> </div> </main> <?php get_footer(); ?>
以下が送信画面に表示させてるSMTPデバッグのメッセージです。
エビチリ¥800 *1味噌ラーメン¥900 *1Invalid address: (Reply-To): 2020-05-06 09:26:29 Connection: opening to ssl://sv10113.xserver.jp:465, timeout=300, options=array() 2020-05-06 09:26:29 Connection: opened 2020-05-06 09:26:29 SERVER -> CLIENT: 220 sv10113.xserver.jp ESMTP Postfix 2020-05-06 09:26:29 CLIENT -> SERVER: EHLO takeout-dish.com 2020-05-06 09:26:29 SERVER -> CLIENT: 250-sv10113.xserver.jp250-PIPELINING250-SIZE 102400000250-VRFY250-ETRN250-AUTH PLAIN LOGIN250-AUTH=PLAIN LOGIN250-ENHANCEDSTATUSCODES250-8BITMIME250 DSN 2020-05-06 09:26:29 CLIENT -> SERVER: AUTH LOGIN 2020-05-06 09:26:29 SERVER -> CLIENT: 334 VXNlcm5hbWU6 2020-05-06 09:26:29 CLIENT -> SERVER: [credentials hidden] 2020-05-06 09:26:29 SERVER -> CLIENT: 334 UGFzc3dvcmQ6 2020-05-06 09:26:29 CLIENT -> SERVER: [credentials hidden] 2020-05-06 09:26:29 SERVER -> CLIENT: 235 2.7.0 Authentication successful 2020-05-06 09:26:29 CLIENT -> SERVER: MAIL FROM:<kaga@takeout-dish.com> 2020-05-06 09:26:29 SERVER -> CLIENT: 250 2.1.0 Ok 2020-05-06 09:26:29 CLIENT -> SERVER: RCPT TO:<yuyuuumama0320@gmail.com> 2020-05-06 09:26:29 SERVER -> CLIENT: 250 2.1.5 Ok 2020-05-06 09:26:29 CLIENT -> SERVER: DATA 2020-05-06 09:26:29 SERVER -> CLIENT: 354 End data with <CR><LF>.<CR><LF> 2020-05-06 09:26:29 CLIENT -> SERVER: Date: Wed, 6 May 2020 09:26:29 +0000 2020-05-06 09:26:29 CLIENT -> SERVER: To: yuyuuumama0320@gmail.com 2020-05-06 09:26:29 CLIENT -> SERVER: From: 2020-05-06 09:26:29 CLIENT -> SERVER: Subject: =?utf-8?B?44GK5ZWP44GE5ZCI44KP44Gb?= 2020-05-06 09:26:29 CLIENT -> SERVER: Message-ID: <02kDIUdNJ6gXgBCHk5Z3d4jPslUmZQeTthrFBlO4Jc@takeout-dish.com> 2020-05-06 09:26:29 CLIENT -> SERVER: X-Mailer: PHPMailer 6.1.5 (https://github.com/PHPMailer/PHPMailer) 2020-05-06 09:26:29 CLIENT -> SERVER: MIME-Version: 1.0 2020-05-06 09:26:29 CLIENT -> SERVER: Content-Type: text/plain; charset=utf-8 2020-05-06 09:26:29 CLIENT -> SERVER: Content-Transfer-Encoding: 8bit 2020-05-06 09:26:29 CLIENT -> SERVER: 2020-05-06 09:26:29 CLIENT -> SERVER: [注文内容] 2020-05-06 09:26:29 CLIENT -> SERVER: エビチリ¥800 *1 2020-05-06 09:26:29 CLIENT -> SERVER: 味噌ラーメン¥900 *1 ...略... 2020-05-06 09:26:29 CLIENT -> SERVER: 2020-05-06 09:26:29 CLIENT -> SERVER: [本文] 2020-05-06 09:26:29 CLIENT -> SERVER: 1 2020-05-06 09:26:29 CLIENT -> SERVER: 2020-05-06 09:26:29 CLIENT -> SERVER: 2020-05-06 09:26:29 CLIENT -> SERVER: 2020-05-06 09:26:29 CLIENT -> SERVER: このメールはホームページのお問い合わせフォームから送信されました。 2020-05-06 09:26:29 CLIENT -> SERVER: 2020-05-06 09:26:29 CLIENT -> SERVER: . 2020-05-06 09:26:29 SERVER -> CLIENT: 250 2.0.0 Ok: queued as 1A45CB813B5C36 2020-05-06 09:26:29 CLIENT -> SERVER: QUIT 2020-05-06 09:26:29 SERVER -> CLIENT: 221 2.0.0 Bye 2020-05-06 09:26:29 Connection: closed
その他の参考としては、
・auのメールアドレスに設定しても受信されない
・XserverのWEBメールをのぞいてみたら、「Undelivered Mail Returned to Sender」という件名で、添付写真のようなメールが届いていました。
なぜ受信できるアドレスとできないアドレスがあるのでしょうか?
解決方法など教えていただければ幸いです。
よろしくお願いいたいします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/06 10:16