mb_send_mailを実行するとエラーになります

このQ&Aのポイント
  • mb_send_mail関数を使用してメールを送信しようとするとエラーが発生します。PHPの設定やメールサーバの設定を確認する必要があります。
  • XPにPHPとアパッチをインストールし、mb_send_mail関数を使用してメールを送信しようとしていますが、エラーが発生します。
  • XP環境でmb_send_mail関数を使用してメールを送信するためには、メールサーバをインストールする必要があります。
回答を見る
  • ベストアンサー

mb_send_mailを実行するとエラーになります

Warning: mb_send_mail() [function.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 ・・・・ XPにPHPとアパッチを入れて <?php $mlfr = "xxxx@nifty.com"; $mlto = "xxxx@mail.goo.ne.jp"; mb_internal_encoding("EUC-JP"); $mlsb = "たいとる"; $mlms = "ないよう"; $mlhd = "from: $mlfr\r\n"; mb_send_mail($mlto,$mlsb,$mlms,$mlhd,"-f".$mlfr); ?> を実行してもメールが送られません XPにメールサーバを入れなければならないのでしょうか?

  • reiman
  • お礼率73% (794/1076)
  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • inu2
  • ベストアンサー率33% (1229/3720)
回答No.1

>XPにメールサーバを入れなければならないのでしょうか その通りです もしくは、外部接続可能なメールサーバーを利用してください エラーメッセージを簡単に訳すると 「メールサーバーに接続できねぇぞ」と怒られています

reiman
質問者

お礼

ありがとうございました

関連するQ&A

  • メールフォーム(mb_send_mail)が送信されません。

    mb_send_mailを使ったメールフォームで分からないことが御座いますのでどなたかご教授下さい。 HTMLで入力させた宛先のアドレスにサイトのアドレスを紹介する為に使用するメールフォームです。 以下のソース部の$mlto = 'hoge@hoge.jp';の部分を HTMLより引き継いできた$adにメールを送信したい (イメージ的には $mlto = $ad;) のですが、うまくいきません。 シングルクオテーションが無いからなのか、送信できません。 ちなみに、 $mlto = 'hoge@hoge.jp';のように すれば、普通に送信できます。 どなたかご回答宜しくお願い致します。 PHP4のLINUXのレンタルサーバです。 ソースは以下の通りです。 <?php $ad=$_POST['add']; $mlfr = 'hogehoge@hogehoge.jp'; $mlto = 'hoge@hoge.jp'; $mlsb = 'タイトル'; $mlms = 'サイトのアドレス'; $jcph = '.'; mb_send_mail($mlto, $mlsb, $mlms, $mlfr); header("Location: ok.html"); ?>

    • ベストアンサー
    • PHP
  • mb_send_mailでのメール送信がエラーしてしまいます。

    PHPを独習しています。 mb_send_mailでのメール送信でつまづいてしまっており、 ご回答いただければ幸いです。 mb_string等の設定は正常に出来ていると思うのですが、 下記のとおり、mailserverに接続できない旨のエラーが 表示されてしまいます。 ●エラー本文 Warning: mb_send_mail() [function.mb-send-mail]: Failed to connect to mailserver at "(契約サーバー)" port 465, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\Program Files\Apache Group\Apache2\htdocs\sample\Part4\4-8\4-8-1.php on line 11 ●PHP本文 $mailto = "(自分のアドレス)"; $subject = "test"; $content = "本文test"; $mailfrom = "From:aaaa@bbb.ccc"; $mailfrom="From:" .mb_encode_mimeheader("木村") ." <ddd@eee.fff>"; if (mb_send_mail($mailto,$subject,$content,$mailfrom)){ echo "送信成功"; }else{ echo "送信失敗"; もしお分かりになる方がいれば、 どうかご教授のほど、よろしくお願いします。

    • ベストアンサー
    • PHP
  • ローカル環境でのメール送信ができません。

    ローカル環境で、mb_send_mail関数を使用してメールの送信を行いたいのですが、 Warning: mb_send_mail() [function.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 ... というエラーメッセージが表示されてしまいます。 動作環境は、 Apache2.0.55 MySQL5.0.15 PHP5.0.5 を使用しており、PHP,MySQLの内部文字コードはShift_JISで統一しております。 別途メールサーバを導入しないと駄目なのでしょうか?

    • ベストアンサー
    • PHP
  • PHPについて質問です。

    Warning: mb_send_mail() [function.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:\Program Files\Apache Group\Apache2\htdocs\sai.php on line 51 php5で送信フォームを作成してますが上記のようば エラ―がでて困っております。 送信ができるよう、修正の仕方を教えて下さい。 お願いします。

    • 締切済み
    • PHP
  • phpでメール送信

    phpでメールを送信しようとすると、 Warning: mb_send_mail() [function.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() というエラーが出てしまいます・・・。 何が原因なんでしょうか?Localhostの原因でしょうか?

    • 締切済み
    • PHP
  • mb_send_mailに関して

    環境:Windows2008 Server R2 64bit/php5.3.22 教えて下さい。 Windows2008 Server R2 64bit 環境にてPHPを動作させ、mb_send_mail()関数を使って メールを送信しようと考えています。 PHPも問題なく動き、mb_send_mail()関数用にphp.ini も以下のようにメンテナンスし、記述も 問題ないかと思われますが、メールの送信ができません。。。 64bitでは何か設定が違うのでしょうか? 教えて頂きたいと思います。 《php.ini》   [mail function]  For Win32 only.          ← 32bit only とわざわざ記述がある為、64bit ではNG?  http://php.net/smtp  SMTP = XXXXXX  http://php.net/smtp-port  smtp_port = 25  For Win32 only.  http://php.net/sendmail-from  sendmail_from = XXX@XXX.co.jp 《記述内容》  <?php  $mailto = "XXX@XXX.co.jp";  $subject = "掲示板";  $content = "新規投稿がありました。 ☆☆☆";  $mailfrom = "From:mail@colcoat.co.jp";  mb_language("ja");  mb_internal_encoding("UTF-8");  if(mb_send_mail($mailto,$subject,$content,$mailfrom)){  }else{   echo "送信できませんでした";  }  ?> よろしくお願いします。

    • ベストアンサー
    • PHP
  • SMTPサーバの接続に失敗する原因について

    現在、Webからmb_send_mailを使ってメール送信を行おうと思っていますが、 以下のようなエラーが発生します。 Warning: mb_send_mail(): Failed to connect to mailserver at "XXX.XXX.co.jp" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in XXX.php on line XX エラー内容の通り、SMTPサーバに接続できていないのですが、 同じソースをPHP.EXEを使って直接実行すると、 正常にメールが送信されます。(php.iniも同じ) Apacheの設定のような気もしますが、 原因・解決方法について、 どなたかご存知の方がおられましたら、ご教授ください。 環境 Apache2.0.50 PHP4.3.8 以上、よろしくお願い致します。

    • ベストアンサー
    • PHP
  • mb_send_mailでつまづいています

    $jimu_mail="hoge@hogehoge.com"; $return_path = '-f'.$jimu_mail; $rcd = mb_send_mail($mlto, $mlsb, $mlms, $mlfr, $return_path ); という記述があるのですが、mb_send_mailの5番目のパラメータの「$return_path」の部分がどういう働きをもつのか良く分からないのです。 PHP公式サイトのマニュアルには 「MTA のコマンドラインパラメータです。sendmailを使用する場合に正しいReturn-Pathを設 定する場合に便利です」 とありますが、正直言っている意味がわかりません・・・。 実は、以上の状態ですと、メール送信されなかったのですが、2行目を $return_path = $jimu_mail; と、'-f'を取り除いたら送信できるようになりました。 これらについて、 どうして「-f」を取り除いたら送信できるようになったのか、 また、マニュアルにある 「MTA のコマンドラ インパラメータです。sendmailを使用する場合に正しいReturn-Pathを設 定する場合に便利です」の 意味することを解説してくださる方がいらっしゃればとっても助かります。 よろしくお願いします。 環境はPHP Version 4.3.4 Apache/1.3.29 (Unix) です

    • ベストアンサー
    • PHP
  • メールが送信出来ないのですが

    PHPでメールを送信すると、以下のエラーが出るのでが、こんな時何を手がかりに対処していいかわかりません。お手数ですが、アドバイスを頂けたらうれしいのですが。(素人なもんでよろしくお願いします。) Warning: mb_send_mail() [function.mb-send-mail]: Failed to connect to mailserver at "localhost" port 587, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in xxxxxxxx.php on line nnn

    • ベストアンサー
    • PHP
  • メールフォームでご質問が御座います。

    PHP初心者です。 <?php #$From = i18n_convert(i18n_mime_header_decode( $FromHeader ), "EUC"); $na='info@**.co.jp'; $add=$_POST['add']; $mlfr = $na; $mlto = $add; $mlsb = 'パスワード再発行'; $mlms = '本メールに思い当たりの無い方はお手数ですが破棄願います。パスワード「'.$pw.'」。'; $jcph = '.'; mb_send_mail($mlto, $mlsb, $mlms, $mlfr); header("Location: ok.html"); ?> 上記のソースですが、届くメールは以下の※になります。 なぜ、mime-versionとかcontent-typeとか表示されてしまうのでしょうか? mb_send_mailの仕様ですか? そのような表示を消すにはどうすれば良いのでしょうか? どなたかご教授宜しくお願い致します。 ※ info@*.co.jp Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit 本メールに思い当たりの無い方はお手数ですが破棄願います。

    • ベストアンサー
    • PHP

専門家に質問してみよう