phpの記述は以下のようにしています。
<?php
$id = $_POST["id"];
$mail = $_POST["mail"];
$message = $_POST["message"];
mail("***@yahoo.co.jp", "id", "mail",$message);(←15行目です)
?>
php.iniの設定は以下のようです。
[mail function]
; For Win32 only.
SMTP = smtp.mail.yahoo.co.jp
smtp_port = 25
; For Win32 only.
sendmail_from = ***@yahoo.co.jp
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = "C:\xampp\sendmail\sendmail.exe -t"
yahooデリバーの登録もやりましたが、
Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in C:\xampp\htdocs\php0808\b.php on line 15
のようなエラーが出ます。
考えられるのはyahooのPOPでのID認証が問題かと思っていますが、その方法も分かりません。
わかる方いらしゃいましたら教えてください。
Fromヘッダが設定されてない、というエラーですね。
mail関数は
http://jp.php.net/manual/ja/function.mail.php
なので、15行目は
mail("***@yahoo.co.jp", "mail", $message, $headers);
となるはずです。
(「例2 追加ヘッダを付加してメールを送信する」に詳しく載っています。)
また、ご存じかも知れませんが日本語を扱う場合は
http://jp.php.net/manual/ja/function.mb-send-mail.php
をご利用ください。
おそらくメールデーモンの問題ではないでしょうか?
sendmailあたりのソフトやそのパスなどを見直してみるといいかと思います。
とりあえず送信できてるの?というのを確かめたい場合には、
Melonというsmtpソフトを使ってメールサーバを立ち上げ、
送信テストを行ってみるといいかもしれません。
これで送信できるようであれば、現状のシステムでの問題が
絞られるかと思います。
ちなみにMelonはセットし、起動さえすれば簡単に動くもので、
当方でローカルテストを行う場合によく使うソフトです。
OSはvistaで開発しており、問題なく動いております。
ご回答ありがとうございます。
早速Melonをダウンロードし、使ってみました。
Melonの管理画面では目的のアドレスに送信記録が残っているのですが、実際にはメールが送られていないようです。
送信元メールはyahooのメール、送信先はhotmailに設定しているのですが、送信元メールに問題があるのでしょうか??
ご回答ありがとうございます。
$headersを設定し、エラーは解消されました。
ただ指定のアドレスにメールが届きません。
メールフォームとphpを同じファイルに記述しているのが問題なのでしょうか・・
原因が分かりません。。