実現したいこと
・ PHPでメールフォーム(問い合わせフォーム)を作成する。
・ ローカル環境(XAMPP)でもメールを送受信できるようにする。
・ 「regist.html」でフォーム入力し「confirm.php」で内容確認の後「complete.php」でメール送信する。
・ mailtrapのInboxにメールが届くようにする。
前提
会社のHPの問い合わせフォームのテストのためローカル環境(XAMPP)でphpファイルがうまく動くかテストしています。
SMTPサーバーにはmailtrapを利用するのが簡易と聞いたのでmailtrapを使おうとしています。
発生している問題・エラーメッセージ
regist.htmlで入力した情報をcomplete.phpで送信すると、errorは特に出ない(errorのログファイルには特に何も出力されず、ページ遷移もスムーズ)のですが、MailtrapのInboxには何も届きません。
該当のソースコード
PHP
1<?php2if($_SERVER["REQUEST_METHOD"] != "POST"){3 header("Location: index.php");4 exit();5}6 7mb_language("Japanese");8mb_internal_encoding("UTF-8");9 10$to = "xxx@example.jp";11$subject = "XXXXXXXXXX";12$message = <<< EOM13 14下記内容の問い合わせがありました。 15━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 16【 名前 】 17{$_POST["name"]}18 19【 メール 】 20{$_POST["email"]}21 22 23【 問い合わせ内容 】 24{$_POST["contact_body"]}25 26━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 27EOM;28 29$headers = "From: xxx@example.jp";30 31mb_send_mail($to, $subject, $message, $headers); 32?>33<!DOCTYPE html>34<html>35<head>36<meta charset="utf-8">37<title>完了画面</title>38<style type="text/css">39 body {40 background-color: #f9fff2;41 }42</style>43</head>44<body>45 <h2>お問い合わせ完了</h2>46 <p>お問い合わせありがとうございました。</p>47 <p>今後とも当サイトをよろしくお願いいたします。</p>48 <p><a href="index.php">お問い合わせトップへ</p>49</body>50</html>
試したこと
https://qiita.com/e__ri/items/ba030448eda141bfb593
上記サイト等を参考にして、xamppファイル下の"sendmail.ini", "php/php.ini"は編集しています。
php.ini
sendmail_path = “\”C:\xampp\sendmail\sendmail.exe\” -t”
sendmail.ini
smtp_server=sandbox.smtp.mailtrap.io
smtp_port=2525
smtp_ssl=tls
auth_username=X--------X (MailtrapのIntegrations: PHP- Laravel 7+で表示される実際のUSERNAME)
auth_password=X--------X (MailtrapのIntegrations: PHP- Laravel 7+で表示される実際のPASSWARD)
force_sender=X--------X(MailtrapのIntegrations: PHP- Laravel 7+で表示される実際のUSERNAME)
===============================
当方phpを使ったHP作成などはこれまで経験なく、ついに行き詰ってしまいました。解決策をご教示頂ければ幸いです。

0 コメント