プロが教える店舗&オフィスのセキュリティ対策術

xamppでPHPのフォームからメール送信できない。

phpを勉強し始めた初心者です。お世話になります。

phpで会員登録出来て申し込みも出来るフォームをつくりました。
他の場所(LANで繋がれた環境)では登録も保存も出来、メール(自分のgmailアドレス)
に送られて来るように作成してあるのですが、そこではちゃんとメールが届きますが

自宅で同じように設定して送信すると
登録は出来てDBに保存されるのですがメールが送られてきません。

自宅はデスクトップのPCにモデムにケーブルをつないでいます。

プロバイダーはSonetウィズフレッツ光マンションタイプです。

他の場所の違いはDNSサーバーくらいなのですが、
それをXamppの中のMercuryに設定しても
うまくいきません。
sonetやNTTに聞いても「特にブロックするようなことはしていない」との事で
問題なく動くようですが・・一度もメールがおくられてきていません。

やったこと
■php.iniの設定変更【下記参照】C:\xampp\apache\bin\php.ini

●ここの設定を↓
[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

●このように変えたり↓してもだめでした。
[mail function]
; For Win32 only.
SMTP = mail.XXX.so-net.ne.jp
smtp_port = 587

●この辺はコメントをはずしています。↓


; For Win32 only.
;sendmail_from = exsample@gmail.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = "C:\xampp\sendmail\sendmail.exe -t"



[mbstring]
; language for internal character representation.
mbstring.language = Japanese

; internal/script encoding.
; Some encoding cannot work as internal encoding.
; (e.g. SJIS, BIG5, ISO-2022-*)
mbstring.internal_encoding = UTF-8


■mercuryの設定
コマンドプロンプトでipconfig/allで

DNSserverを調べると
二つでてきたので(プライマリとセカンダリ?)
プライマリのほうだけ入れたり
両方入れたり
セカンダリだけいれたり

試しましたが全て駄目なようです。


繋がらないので試したこと
●ウイルスソフト(アバスト)を無効にした。
●ファイヤーオールを無効にした。

XAMPP (Basispaket) version 1.6.8
windowsXP

ブラウザfirefox3.6.8



なにか設定しないと動かないのでしょうか?
一応 画像添付します。
以上ですが他の情報が必要でしたらおっしゃっていただけたらと思います。

宜しくお願いします。

「xamppでPHPのフォームからメール送」の質問画像

A 回答 (1件)

次のように設定すれば一応外部に送信できると思います。



■php.ini
[mail function] セクション
sendmail_path = "C:\xampp\sendmail\sendmail -t"
以外はすべてコメントアウトする。

■sendmail.ini
[sendmail] セクション
smtp_server= ISPのSMTPサーバ名
smtp_port=587
smtp_ssl=auto
default_domain= ISPのメールドメイン
auth_username= ISPのメールアカウント
auth_password= 上記のメールパスワード
force_sender= 上記アカウントのメールアドレス
hostname= localhostname or computername

■Mercury 起動しない
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!
見事に送られてきました!!
感動しました。
本当に助かりました。

お礼日時:2010/07/30 13:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!