• ベストアンサー
  • 困ってます

mb_send_mailについて

こんにちは。現在phpの勉強中で、まだローカルテスト環境でしか動かしたことのない者です。今回もローカルテスト環境なんですが、いずれアンケートフォームのようなものを作りたくて、ある書籍を参考に、自分宛にメールを送ろうとしました。 コードの内容は、最初に表示する画面の「mail_input.php」が、 <html> <head> <title>メール送信</title> </head> <body> <h1 style="background:#cccccc"> メール送信</h1> <form method="POST" action="sendmail.php"> <input type="hidden" name="_email" value="ここに自分のメールアドレスを入れました" /> <input type="hidden" name="_subject" value="自分宛てメール" /> <input type="hidden" name="_result" value="<?php print($_SERVER['PHP_SELF']);?>" /> <table border="0"> <tr> <th align="right">名前:</th> <td><input type="text" name="name" size="20" maxlength="30" /></td> </tr><tr> <th align="right">E-Mail:</th> <td><input type="text" name="_from" size="50" maxlength="255" /></td> </tr><tr> <th align="right" valign="top">自由記入欄:</th> <td><textarea name="memo" cols="50" rows="5"></textarea></td> </tr> </table> <input type="submit" value="送信" /> <input type="reset" value="クリア" /> </form> </body> </html> で、メールを送るプログラムの「sendmail.php」が、 <?php $header_info="From: ".$_POST['_from']."\nContent-Type: text/plain;charset=ISO-2022-JP\nX-Mailer: PHP/".phpversion(); $body="■■".$_POST['_subject']."■■\n\n"; foreach($_POST as $key=>$value){ if(!strstr($key,"_")){ $body.="[".$key."]".$value."\r\n"; } } $kekka=mb_send_mail($_POST['_email'],$_POST['_subject'],$body,$header_info); if($kekka){ header("Location: ".$_POST['_result']); } else{ print "送信失敗"; } ?> です(どちらも文字コードはUTF-8で改行コードはLFです)。 これを動かしたら、 Warning: mb_send_mail() [function.mb-send-mail]: SMTP server response: 451 See http://pobox.com/~djb/docs/smtplf.html. in C:\xampp\htdocs\Mysite\lesson\php10\day04-1\sendmail.php on line 9 送信失敗 と表示され、メールも受信できませんでした。 php.iniの内容は、 [mail function] ; For Win32 only. SMTP = smtp.eonet.ne.jp smtp_port = 25 ; For Win32 only. sendmail_from = ここに自分のメールアドレスをいれました ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). ;sendmail_path = "C:\xampp\sendmail\sendmail.exe -t" で、windowsメールのツールメニューのアカウント→プロパティ→サーバーのところの送信メール(SMTP)(U)のところは、smtp.eonet.ne.jpになっています。送信メールサーバーのところは、「このサーバーは認証が必要」にチェックを入れています。詳細設定の、サーバーのポート番号のことろの、送信メール(SMTP)(O)のところは25にしています。 こちらの環境は、windows vista、xampp1.6.5、php5.2.5で、メールソフトはwindows mailです。加入しているプロバイダはeonet(イオネット)です。コードはサンプルコードをちょっと変えた程度のものなので、たぶんphp.iniの設定やwindowsメールの設定が悪いのだろうと思い、windowsメールの設定のことをイオネットに問い合わせたところ、phpとかそういったことへの質問は対応しかねますとのことでした(対応した方はphpという単語自体を知りませんでした)。 php.iniの[mail function]のところで、 ; For Win32 only. SMTP = smtp.eonet.ne.jp smtp_port = 587 にして、windowsメールの詳細設定の、サーバーのポート番号のことろの、送信メール(SMTP)(O)のところを587にしたり、その他いろいろやってみましたが、ダメでした。ただメールを自分宛に送るだけなので、おそらくとても初歩的なところでつまずいているんでしょうが(考え方が根本的にズレてるような気もします)、解決方法が見つかりません。どなたかアドバイスいただけませんか。イオネットの方だと非常にありがたいです。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数3082
  • ありがとう数4

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

  • ベストアンサー
  • 回答No.1
  • shimix
  • ベストアンサー率54% (865/1590)

>送信メールサーバーのところは、「このサーバーは認証が必要」にチェックを入れています。 SMTP認証が必要なサーバは標準のmb_send_mailでは扱えません(ローカルのメールサーバを使うことを前提にしていますので)。 こちら↓にあるようにPEARライブラリなどを使うしかないようです。   http://ml.php.gr.jp/pipermail/php-users/2003-June/016799.html ちなみに、mb_send_mailを使うときはmb_language('ja')だけ指定しておけば、mb_internal_encodingからiso-2022-jpに変換すると同時に適切なヘッダを付加してくれます。自分でContent-Typeなどを付ける必要はありません。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

返事が遅れてすいません。アドバイスありがとうございます。だいたいの書籍がmb_send_mailを使っているので、書籍どおりにいかないのは困りましたが仕方ないですね。ご紹介いただいたPEARライブラリのこととかも調べてみます。できる限り自力で調べようと思いますが、わからなくてまた質問するようなことがありましたら、よろしくお願いします。

関連するQ&A

  • (PHP初学者) mb_send_mail

    フォームに入力された内容をローカル環境(Xampp)から フリーメールアドレスに送信をする課題を勉強をしています。 入力側ファイル ---------------------------------------------- <html> <body> <form action="mail.php" method="post"> 名前</th><td><input type="text" name="name"><br> メール</th><td><input type="text" name="mail"><br> メッセージ</th><td><textarea name="messe"></textarea><br> <input type="submit" value="確認する" name="submit"> </body> </html> ---------------------------------------------- 送信ファイル(mail.php) ---------------------------------------------- <?php error_reporting(1); $name = $_POST["names"]; $mail = $_POST["email"]; $messe = $_POST["messe"]; mb_language("ja"); mb_internal_encoding("euc-jp"); $naiyou = $names."<br/>".$mail."<br />".$messe; $result = mb_send_mail("○○○@yahoo.co.jp","メール送信テスト",$naiyou); //受信するフリーメールアドレス if($result){echo "成功"; }else{echo "失敗";} ?> ---------------------------------------------- このサンプルと別のサンプルで試して どちらも結果は「成功」と表示されるのですが 実際にはフリーメール側でのメールの受信はできません。 (ホットメールとヤフーメールで試しています。) PHP学習サイトで「php.ini」の設定を変えなければならないということで 以下の部分のセミコロンをはずし変更してみました。 [mail function] SMTP = ○○○(ここには契約プロバイダのsmtpサーバを記入) smtp_port = 25 sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t" 多くのPHPを勉強している方がここでつまずいているようで 色々調べてみたのですが 上手くいかない原因はそれぞれ異なるようで 上手くいく手がかりが見つかっていません。 難しいことはまだ理解できないため できるだけ難しい関数や処理などは使わない方法で 解決できる手段があれば ご教授よろしくお願いいたします。

    • 締切済み
    • PHP
  • PHPのメール送信ができません

    初心者な者でこのような質問でごめんなさい。 私は10日でおぼえるPHPという本で勉強しているのですが 下記の内容に困ってます 【mail_input.php】 10日でおぼえるPHP5入門教室(アンケート)</h1> <form method="post" action="sendmail.php"> <input type="hidden" name="_email" value="****@***.jp" /> <input type="hidden" name="subject" value="10日でおぼえるPHP5入門教室" /> <input type="hidden" name="_result" value="<?php print($_SERVER['PHP_SELF']);?>" /> <table border="0"> <tr> <th align="right">名前:</th> <td><input type="text" name="name" size="20" maxlength="30" /></td> </tr><tr> <th align="right">E-Mail:</th> <td><input type="text" name="_from" size="50" maxlength="255" /></td> </tr><tr> <th align="right" valign="top">自由記入欄:</th> <td><textarea name="memo" cols="50" rows="5"></textarea></td> 【sendmail.php】 <?php $header_info="From: ".$_POST['_from']."\nContent-Type: text/plain;charset=ISO-2022-JP\nX-Mailer: PHP/".phpversion(); $body="■■".$_POST['_subject']."■■\n\n"; foreach($_POST as $key=>$value){ if(!strstr($key,"_")){ $body.=" [".$key."] ".$value."\r\n"; } } mb_send_mail($_POST['_email'],$_POST['_subject'],$body,$header_info); header("Location: ".$_POST['_result']); ?> ===================================================== 上記の内容でメールが送れるとの事だったのですが php.iniの設定も SMTPやsendmail_fromどちらとも設定はでき 送れるはずなのですがメールが届きません なぜなのでしょうか? もしよろしければ教えて頂けないでしょうか? お願いします。

    • 締切済み
    • PHP
  • PHPのメールフォームでメールが受信できない。

    かんなりのPHP初心者で「10日でおぼえるPHP5入門教室」という本で初めてPHPを勉強しています。 http://www.webmate.ne.jp/samples/php10.jsp の4日目の1時限目をしているのですが、何回やってもメールが受信できません。ブラウザで入力して送信してもエラーも出ないのでどうしたらいいのかわかりません。 PHPの内容は以下の通りです。 mail_input.phpの中身 <html> <head> <title>10日でおぼえるPHP5入門教室(アンケート)</title> </head> <body> <h1 style="background:#cccccc"> 10日でおぼえるPHP5入門教室(アンケート)</h1> <form method="POST" action="sendmail.php"> <input type="hidden" name="_email" value="**@yahoo.co.jp" /> <input type="hidden" name="_subject" value="10日でおぼえるPHP5入門教室" /> <input type="hidden" name="_result" value="<?php print($_SERVER['PHP_SELF']);?>" /> <table border="0"> <tr> <th align="right">名前:</th> <td><input type="text" name="name" size="20" maxlength="30" /></td> </tr><tr> <th align="right">E-Mail:</th> <td><input type="text" name="_from" size="50" maxlength="255" /></td> </tr><tr> <th align="right" valign="top">自由記入欄:</th> <td><textarea name="memo" cols="50" rows="5"></textarea></td> </tr> </table> <input type="submit" value="送信" /> <input type="reset" value="クリア" /> </form> </body> </html> ・sendmail.phpの中身は <?php $header_info="From: ".$_POST['_from']."\nContent-Type: text/plain;charset=ISO-2022-JP\nX-Mailer: PHP/".phpversion(); $body="■■".$_POST['_subject']."■■\n\n"; foreach($_POST as $key=>$value){ if(!strstr($key,"_")){ $body.="[".$key."]".$value."\r\n"; } } mb_send_mail($_POST['_email'],$_POST['_subject'],$body,$header_info); header("Location: ".$_POST['_result']); ?> という感じです。php.iniもYAHOO!のフリーメールなので SMTP=smtp.mail.yahoo.co.jp sendmail_from=**@yahoo.co.jp 拡張関数が使えるように extension_dir="c:/php/ext" extension=php_mbstring.dll としました。 しかし全く送れません。Yahoo!のフリーメールだからでしょうか?? すいません。ど素人なのでわかりやすく教えて下さい。お願いします。

  • mb_send_mailでのHTMLメール送信について

    こんにちは PHP でメールフォームを作成しています。 以前、こちらで相談に乗っていただき、 テキストメールの送信は正常に行ましたが、 テキストメールでは、送られてくるメールが貧弱な為、 HTML メールに変更しようと思っています。 $body=''; の中を HTML に書き換えたのですが、 コードのままメールが送られてきます。 どのようにすれば、''内のコードを正しく認識してくれますでしょうか。 mb_send_mailで実現するのは難しいでしょうか。 どなたか、ヒントをください。 よろしくお願いします。 -------------------------------------- 今は、以下のようなコードを書いています。 <?php mb_language('Japanese'); mb_internal_encoding("Shift-JIS"); $header_info="From: ".$_POST['email']."\nContent-Type: text/plain;charset=ISO-2022-JP\nX-Mailer: PHP/".phpversion(); $body=' <html> <table width="100%" border="1"> <caption>入力内容をご確認いただき、正しければ 「送信」 ボタンを押してください。</caption> <tr bgcolor="#A9A9A9"> <td colspan=3>依頼者の情報</td> </tr> <tr bgcolor="#D3D3D3"> <th width="10%" align="right">1</td> <td width="50%" align="left" bgcolor="#D3D3D3">所属</td> <td width="40%"><?php print $section ?></td> </tr> <tr> <th width="10%" align="right">2</td> <td width="50%" align="left">依頼者</td> <td width="40%"><?php print $name ?></td> </tr> <tr bgcolor="#D3D3D3"> <th width="10%" align="right">3</td> <td width="50%" align="left" bgcolor="#D3D3D3">メールアドレス</td> <td width="40%"><?php print $email ?></td> </tr> ...... 中略 </table> </html> '; mb_send_mail($_POST['email'],$_POST['_subject'],$body,$header_info); ?>

  • 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:\xampp\htdocs\sendmail.php on line 12 Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\sendmail.php:12) in C:\xampp\htdocs\sendmail.php on line 13 1.php.ini の設定は下記のとおりです。正しいでしょうか? [mail function] ; For Win32 only. SMTP = smtp.kss.biglobe.ne.jp smtp_port = 25 ; For Win32 only. sendmail_from = ・・・・@kss.biglobe.ne.jp xampで一括インストールしましたが5php.ini は 変更必要ですか?上記のように変更してしまいましたが。その他設定が必要なところはありますか。 2つのphpファイル リスト1  ・mail_input.php    <html><head></head><body> <form method="POST" action="sendmail.php"> <input type="hidden" name="_email" value="自分のアドレス"/> <input type="hidden" name="_subject" value=""/> <input type="hidden" name="_result" value="<?php print($_SERVER['PHP_SELF']);?>"/> <table border="0"><tr> <th align="right">名前:</th> <td><input type="text" name="name" size="20"/></td></tr><tr> <th align="right">E-Mail:</th> <td><input type="text" name="_from" size="50"/></td> </tr><tr><th align="right">自由記入欄:</th> <td><textarea name="memo" cols="50" rows="5"/></textarea></td> </tr></table> <input type="submit" value="送信"/> <input type="reset" value="クリア"/></body></html> 「自分のアドレス」部分は受信したいアドレスをいれれば宜しいでしょうか?テストの場合でしたら自分の自宅のアドレスなど。それ以外に変更すべきところがありますか。 リスト2・sendmail.php    <?php $header_info="From: ".$_POST['_from']." \nContent-Type:text/plain;charset =ISO-2022-JP\nX-Mailer:PHP/".phpversion(); $body="■■".$_POST['_subject']."■■\n\n"; foreach($_POST as $key=>$value){ if(!strstr($key,"_")){ $body.="[".$key."]".$value."\r\n"; } } mb_send_mail($_POST['_email'],$_POST['_subject'] ,$body,$header_info); header("Location: ".$_POST['_result']); ?> ?リスト2の「 mb_send_mail 」の後に自分のアドレスとか実際は入れる必要がありますか?例えば ($_POST['abcd@hotomail.co.jp']みたいに。 自分のメールアドレス宛に送信されるようにテストしてますが一番上に記したエラーがでてしまい、送れません。素人なので細かくわかりやすく説明していただくとたいへん助かります。 上記のファイルは本を移しただけなので変更するべきところがありますか phpを使ってお問い合わせのページができることをめざしており、とりあえず自宅でテストをしてる状況です。よろしくお願いします。 自宅はbiglobe でネットやメールをしてます。

    • ベストアンサー
    • PHP
  • メール関数で訪問者の声を受け取りたい

    メール関数で訪問者の声を受け取りたい 現在入門書で勉強中です。例題のプログラムがうまく動きません。アドバイスお願いします。使用OSはwindows7、ブラウザはfirefox3.6.11です。apatcheは2.2で、PHPは5.2.14です。 (1)mail_input.php <html> <head> <title>PHP5入門</title> </head> <body> <h1 style="background:#cccccc"> PHP5入門</h1> <form method="POST" action="sendmail.php"> <input type="hidden" name="_email" value="ybbsmtp.mail.yahoo.co.jp" /> <input type="hidden" name="_subject" value="PHP5入門" /> <input type="hidden" name="_result" value="<?php print($_SERVER['PHP_SELF']);?>" /> <table border="0"> <tr> <th align="right">名前:</th> <td><input type="text" name="name" size="20" maxlength="30" /></td> </tr><tr> <th align="right">E-Mail:</th> <td><input type="text" name="_from" size="50" maxlength="255" /></td> </tr><tr> <th align="right" valign="top">自由記入欄:</th> <td><textarea name="memo" cols="50" rows="5"></textarea></td> </tr> </table> <input type="submit" value="送信" /> <input type="reset" value="クリア" /> </form> </body> </html> (2)sendmail.php <?php $header_info="From: ".$_POST['_from']."\nContent-Type: text/plain;charset=ISO-2022-JP\nX-Mailer: PHP/".phpversion(); $body="■■".$_POST['_subject']."■■\n\n"; foreach($_POST as $key=>$value){ if(!strstr($key,"_")){ $body.="[".$key."]".$value."\r\n"; } } mb_send_mail($_POST['_email'],$_POST['_subject'],$body,$header_info); header("Location: ".$_POST['_result']); ?> 警告文が以下です Warning: mb_send_mail() [function.mb-send-mail]: SMTP server response: 530 Sorry, please use SMTP-AUTH instead - for help go to http://help.yahoo.co.jp/help/jp/mail/whatisymail/whatisymail-51.html in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php10\day04-1\sendmail.php on line 9 私の英語力ではSMTP-AUTHを使えといっているように取れるのですが、ヘルプのサイトで指定されているメールソフトは全てwindows7に対応していません。何か方法はないでしょうか?

    • ベストアンサー
    • PHP
  • 教えてください

    <form action="chackbox.php" method="post"> <table> <tr> <th>1</th><th>2</th><th>3</th><th>4</th> </tr> <tr> <td><input type="radio" name="R1" value="1"></td> <td><input type="radio" name="R1" value="2"></td> <td><input type="radio" name="R1" value="3"></td> <td><input type="radio" name="R1" value="4"></td> </tr> <tr> <td><input type="radio" name="R2" value="1"></td> <td><input type="radio" name="R2" value="2"></td> <td><input type="radio" name="R2" value="3"></td> <td><input type="radio" name="R2" value="4"></td> </tr> <tr> <td><input type="radio" name="R3" value="1"></td> <td><input type="radio" name="R3" value="2"></td> <td><input type="radio" name="R3" value="3"></td> <td><input type="radio" name="R3" value="4"></td> </tr> <tr> <td><input type="radio" name="R4" value="1"></td> <td><input type="radio" name="R4" value="2"></td> <td><input type="radio" name="R4" value="3"></td> <td><input type="radio" name="R4" value="4"></td> </tr> <tr> <td><input type="radio" name="R5" value="1"></td> <td><input type="radio" name="R5" value="2"></td> <td><input type="radio" name="R5" value="3"></td> <td><input type="radio" name="R5" value="4"></td> </tr> <tr> <td><input type="radio" name="R6" value="1"></td> <td><input type="radio" name="R6" value="2"></td> <td><input type="radio" name="R6" value="3"></td> <td><input type="radio" name="R6" value="4"></td> </tr> <tr> <td><input type="radio" name="R7" value="1"></td> <td><input type="radio" name="R7" value="2"></td> <td><input type="radio" name="R7" value="3"></td> <td><input type="radio" name="R7" value="4"></td> </tr> <tr> <td><input type="radio" name="R8" value="1"></td> <td><input type="radio" name="R8" value="2"></td> <td><input type="radio" name="R8" value="3"></td> <td><input type="radio" name="R8" value="4"></td> </tr> <tr> <td><input type="radio" name="R9" value="1"></td> <td><input type="radio" name="R9" value="2"></td> <td><input type="radio" name="R9" value="3"></td> <td><input type="radio" name="R9" value="4"></td> </tr> <tr> <td><input type="radio" name="R10" value="1"></td> <td><input type="radio" name="R10" value="2"></td> <td><input type="radio" name="R10" value="3"></td> <td><input type="radio" name="R10" value="4"></td> </tr> </table> <input type="submit" value="点数の計算、タイプを決定します"> ここのsubmitボタンを押したときに、nameのR1+R5+R10のvalue1から4の合計の足し算をした後に11を引く処理をしたいです。ここが間違っていたら、JavaScriptやPHP、どちらでもいいんで、処理のコードを教えてくださいお願いします ▼ 点数 =11&#65293;(設問R1+R5+R10であなたが丸をつけた数字の合計点) (  点)

  • PHPでMySQLにデーターを追加するところで壁に当たってしまいました

    PHPでMySQLにデーターを追加するところで壁に当たってしまいました。 PHP5.3&MYSQL5.1 1.フォームへ入力 2.確認画面 3.MySQLへデーター追加 1.form <html> <head><title></title></head> <body> <form method="post" action="conf.php"> <table> <tr><th>番号</th><td><input type="text" name="id" /></td></tr> <tr><th>タイトル</th><td><input type="text" name="title" /></td></tr> <tr><th>テキスト</th><td><textarea name="cont" cols="40" rows="5" /></textarea></tr> <tr><th>日付け</th><td><input type="text" name="update" size="10" /></td></tr> </table> <input type="submit" value="送信" /><input type="reset" value="リセット" /> </form> </body> </html> 2.確認画面 <html> <head><title></title></head> <body> <table> <tr><th>番号</th><td><?php echo htmlspecialchars($_POST["id"]) ?></td></tr> <tr><th>タイトル</th><td><?php echo htmlspecialchars($_POST["title"]) ?></td></tr> <tr><th>テキスト</th><td><?php echo htmlspecialchars($_POST["cont"]) ?></td></tr> <tr><th>日付け</th><td><?php echo htmlspecialchars($_POST["update"]) ?></td></tr> </table> <form method="post" action="upld.php"> <input type="hidden" name="did" value="<?php echo htmlspecialchars($_POST["id"]) ?>" /> <input type="hidden" name="title" value="<?php echo htmlspecialchars($_POST["title"]) ?>" /> <input type="hidden" name="cont" value="<?php echo htmlspecialchars($_POST["cont"]) ?>" /> <input type="hidden" name="update" value="<?php echo htmlspecialchars($_POST["update"]) ?>" /> <input type="submit" value="登録" /> </form> </body> </html> 3.MySQLへデーター追加 <?php $Con = mysql_connect("localhost","root",""); if ($Con == false) {dir ("MySQLの接続に失敗。");} if (!mysql_select_db("phpdata",$Con)) {dir ("データーベース接続に失敗。");} $sql = "insert into daimoku(id,title,cont,update) values('".$_POST["id"]."','".$_POST["title"]."','".$_POST["cont"]."','".$_POST["update"]."')";//SQL文の作成 $res = mysql_query($sql) or die(mysql_error());//クエリの実行 mysql_close($Con);//切断 ?> <html> <head> <title></title> </head> <body> <p>ご登録ありがとうございました。</p> <a href="01.php">戻る</a> </body> 以上のコードでデーターの追加が出来ません。 どなたか教えていただけないでしょうか?

    • ベストアンサー
    • 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
  • mb_send_mail()に関しまして

    初めて投稿させて頂きます。 PHPを触り始めて間もない者ですが、よろしくお願い致します。 現在、PHPの勉強を兼ねまして空メールを送るプログラムを作成しております。 フォームにボタンを1つ設け、そのボタンを押下すると指定のあて先に空メールを送るという簡単なものです。 【html内のボタンの設定】 <form name="top" method="post" action="a.php"> <input type="submit" value="空メールを送る"/> </form> 【a.php(正しく送れたかを知るためにメッセージを表示するようにしてあります)】 <html> <head> PHPメールテスト送信 </head> <body> <? $address = '送信先メールアドレス'; $subject = ''; $message = 'PHPからのテストメール'; $header = "Content-Type: text/plain;charset=iso-2022-jp"; mb_language("Japanese"); if(mb_send_mail($address,$subject, mb_convert_encoding($message,"JIS","EUC-JP"),$header))←エラー行 { print("送信成功!!"); } else { print("エラー:送信失敗!!"); } ?> </body> </html> このプログラムを実行すると以下のエラーが発生します。 Warning: mb_send_mail() [function.mb-send-mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in C:\Program Files\xampp\htdocs\top.php on line 15 参考書を見ながらプログラムを作成したのですが、記述、もしくは設定が関係しているのでしょうか。 分かる方には非常にくだらないことかもしれませんが、ご教授お願い致します。

    • 締切済み
    • PHP