人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

xamppとwindowの環境でローカルからphpを使ってメールを送りたいのですが、なかなかうまくいきません。

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認証が問題かと思っていますが、その方法も分かりません。

わかる方いらしゃいましたら教えてください。


●質問者: horizon58
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:as co.jp exe May MESSAGE
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● krese
●35ポイント

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

をご利用ください。

◎質問者からの返答

ご回答ありがとうございます。

$headersを設定し、エラーは解消されました。

ただ指定のアドレスにメールが届きません。

メールフォームとphpを同じファイルに記述しているのが問題なのでしょうか・・

原因が分かりません。。


2 ● mugitaro32
●35ポイント

おそらくメールデーモンの問題ではないでしょうか?

sendmailあたりのソフトやそのパスなどを見直してみるといいかと思います。

とりあえず送信できてるの?というのを確かめたい場合には、

Melonというsmtpソフトを使ってメールサーバを立ち上げ、

送信テストを行ってみるといいかもしれません。

これで送信できるようであれば、現状のシステムでの問題が

絞られるかと思います。

ちなみにMelonはセットし、起動さえすれば簡単に動くもので、

当方でローカルテストを行う場合によく使うソフトです。

OSはvistaで開発しており、問題なく動いております。

http://www.vector.co.jp/soft/dl/win95/net/se240895.html

◎質問者からの返答

ご回答ありがとうございます。

早速Melonをダウンロードし、使ってみました。

Melonの管理画面では目的のアドレスに送信記録が残っているのですが、実際にはメールが送られていないようです。

送信元メールはyahooのメール、送信先はhotmailに設定しているのですが、送信元メールに問題があるのでしょうか??

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ