php7.1.8でメール送信したいです。
サイトをみながらコードを書いてみました。
php.iniの設定はこんな感じです。
php.ini
1[mail function] 2; For Win32 only. 3; http://php.net/smtp 4SMTP = localhost 5; http://php.net/smtp-port 6smtp_port = 25 7 8; For Win32 only. 9; http://php.net/sendmail-from 10;sendmail_from = me@example.com 11sendmail_from = NULL
書いてみたphpのコードは以下です。
php
1<?php 2 mb_language("Japanese"); 3 mb_internal_encoding("UTF-8"); 4 5 $to = "test@yahoo.co.jp"; 6 $subject = "てすと"; 7 $content = "てすと内容"; 8 $headers = "From: test@yahoo.co.jp"; 9 10 if(mb_send_mail($to, $subject, $content, $headers)){ 11 echo "メール送信成功です"; 12 } else { 13 echo "メール送信失敗です"; 14 } 15?>
こんなエラーが出ます。
phpからのエラーメッセージ
1Warning: mb_send_mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\apache\Apache24\htdocs\test\test.php on line 10 2メール送信失敗です
設定が良くないのだと思いますが、ここ(https://www.php.net/manual/ja/mail.configuration.php)をみて設定したので間違いないような気がしています。
メールを送信するにはどうすれば良いのでしょうか。
>SMTP = localhost
smtpサーバーをインストールしてメールを送信できる状態に設定してるのですよね?
いえそれはやってないです。
> をみて設定したので間違いないような気がしています。
自分の環境に応じて、「正しく」設定する必要があります。
localhostではメール送信は出来ないのでしょうか。
何も存在していない「localhost:25」に対して接続しようとして繋がる訳無いのです。
localhostから送りたいならメールサーバーを立てなくてはいけません。立てるのに必要な条件が揃っているかどうかは知りませんが。
> もしローカル環境にメール送信用サーバが稼動してそれを利用する場合は「localhost」でも結構です。
https://www.javadrive.jp/php/mailini/index1.html
回答1件
あなたの回答
tips
プレビュー