
PHP超初心者です、よろしくお願いします。
PC環境:Windows 7
サーバー:XAMPP1.7.7上でのlocal server
PHPバージョン:5.3.8
下記簡単なコーディングで、試していますが、送信は下記条件のTrueのとおり”メールが送信されました”とでますが、該当のメイルアドレスに受信しません。メイラーのjunk に入っているかも確認しましたが、入っていません。宛先のメイルアドレスは、MSNのホットメイルとniftyのメイルアカウント両方で試しましたが、同じです。
とても基本的なミスをしているかもしれないのですが、どなたかご教授くださいませ。
<?php
if (mail("my_account@live.com", "TEST MAIL", "This is a test message.")) {
echo "メールが送信されました。";
} else {
echo "メールの送信に失敗しました。";
}
?>
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
提示されているプログラムコードは問題ないです。
恐らくPHPがmail送信処理を投げている先だと思います。
PHP単体で実際の送信処理が行われているわけではありません。
プログラムを書くだけだと、そんな気がしてしまいますが、実際には他のメール送(受)信機能を持ったプログラムに対してキューを投げるだけです。
きちんとキューを投げるとmail関数の処理は「正常」なのでtrueが返されます。
ご提示のプログラムの場合は、送信者は誰になりますか?
送信元が何も定義されていない状態ではメールは送れませんよ。
iniの設定はどうなっているのでしょうか?
linuxだとデフォルトでsendmailにメール送信を実行させます。
windowsでの標準は忘れましたが、xamppだとmercuryが一緒に入りますので、mercuryに対しての設定をしてやれば送信できます。
少し古いバージョン(1.7.2とか)でwindowsローカルからの送信を行おうとした時は、デフォルトで入っていたMercuryがうまく動かなくて、単体で入れ直した記憶があります。
また、個人でインターネット契約されているプロバイダのメールアドレスや、gmailなども送信に利用出来ます。
「PHP gmail 送信」などで検索すればいろいろと情報は得られると思います。
No.1
- 回答日時:
win版だとsmtpサーバーをphp.iniで指定すると思うのですが
きちんとされていますか?
環境に依存しない意味ではPEAR::Mailの方がいいかもしれません
参考URL:http://pear.php.net/manual/ja/package.mail.mail. …
この回答への補足
ご回答内容から、下記プログラムを実行してみましたところ、
<?php
include('Mail.php');
$recipients = 'sample@nifty.com';
$headers['From'] = 'sample@nifty.com';
$headers['To'] = 'sample@nifty.com';
$headers['Subject'] = 'Test message';
$body = 'Test message';
$params['sendmail_path'] = '/usr/sbin/sendmail';
// Mail::factory メソッドを使用してメールオブジェクトを作成します
$mail_object =& Mail::factory('sendmail', $params);
$mail_object->send($recipients, $headers, $body);
?>
下記エラーが発生しました。
Strict Standards: Non-static method Mail::factory() should not be called statically in C:\xampp\htdocs\test\mail_test_sendmail.php on line 15
Strict Standards: Non-static method Mail_RFC822::parseAddressList() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Mail.php on line 253
Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Mail\sendmail.php on line 164
Strict Standards: Non-static method PEAR::getStaticProperty() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\PEAR.php on line 871
?>
やはり全く意味がわからなく行うことに、無理があるように思います。
PHPを学ぶコース(学校)を探してみます。
ご教授感謝いたします。
早速のご回答ありがとうございます!
smtpサーバーの設定はしておりますが、ご提案の方法で再度挑戦し、結果を明日ご連絡いたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
submitボタンの二重送信について
-
メールフォームの重複送信の制...
-
ロリポップと、phpで自動の返信...
-
拡張子PHP3のスクリプトを...
-
phpのheader("Location:#pos")...
-
*.php、*.php3、*.phtmlの違い
-
CFileDialogの最初のディレクト...
-
シェルスクリプトをPHPで動かそ...
-
php4とphp5での数値の取り扱い...
-
require_once()でファイルが読...
-
PHPのif文でその処理を途中で抜...
-
「クラス関数」「メンバ関数」...
-
ZendFrameworlkでZend_Session...
-
HPを開くとダウンロードページ...
-
ImageCreate関数が undefined f...
-
Warning: Invalid argument sup...
-
phpのextension_dirを複数指定...
-
PHPからlhaコマンドを使いたい
-
require_onceが動いていない
-
再度、xamppにおけるjpgraphの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ループの中で mailItemObj.Disp...
-
SoftBankにメール送信できない
-
【エクセルVBA】メール送信前に...
-
basp21 Proでのメールの暗号化...
-
VBでメールを送る時のSMT...
-
コマンドプロンプトで添付ファ...
-
空メール送信~メールアドレス取得
-
BASP21を使って
-
存在しないメールアドレスかど...
-
SendMailがエラーを返さない
-
HPの更新をしたら自動でメール...
-
VB.NETでフリーメールアドレス...
-
Bookを閉じて保存した時のみ実...
-
一定時間毎に同じ動作を繰り返...
-
phpでメールを送信
-
PHPで空メールの自動返信を作り...
-
$_SERVER{'HTTP_X_UP_SUBNO'}取...
-
javamailで220の応答が遅い
-
PHPでメール送信する際の送信数...
-
UWSCにつきまして
おすすめ情報