
初心者な者でこのような質問でごめんなさい。
私は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どちらとも設定はでき
送れるはずなのですがメールが届きません
なぜなのでしょうか?
もしよろしければ教えて頂けないでしょうか?
お願いします。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
自前でサーバをお持ちのようですが、それなら
maillogを見てみましょう。
OSは何を使っているか分かりませんが、たとえばFreeBSDとかなら
/var/log/maillog
で確認ができます。
maillogに何が書かれていますか?
No.4
- 回答日時:
SMTPサーバは動作していますか?コンソールから、
telnet xxx.xxx.xxx.xxx(SMTPサーバのIPアドレスまたはFQDN) 25
とやってみて、接続できますか?
または、
<?php phpinfo(); ?>
と書いたファイル(phpinfo.phpなどとする)を表示させ、現在の設定がメー
ル送信できる環境かどうか、確認してみてください。
ファイルのパーミッションは、ちゃんと設定していますよね?
No.3
- 回答日時:
#1です。
ではまずネットワークアナライザ使って正しくパケットが送信されているか確認しましょう。
送信したメールのパケットが無ければスクリプトもしくはミドルウェアの記述・設定ミスなどが考えられます。
次にルータのログを見てみましょう。
ちゃんと外部に送信されていますか?
あとSMTPサーバの制限・規制に掛かってないかもう一度確認しましょう。
送信者アドレスがSMTPサーバで許可されていなければ時間がたってからエラーメールが帰ってきます。それを受信できるアドレス使ってないとだめですけどね。
自前のSMTPサーバを使っているのであればそこからのリレーをプロバイダが許可していない事も考えられます。
No.2
- 回答日時:
そもそもこのスクリプトはどこまでが正確に書いてありますか?
</FORM>も無いようですし・・・
テスト環境をもう少し書いて頂かないと、回答を得るのは難しいかもしれません。
ある程度、環境を書いておかないと、ソースをじっくり読んでくれる人もいないかもしれません。
この回答への補足
ごめんなさい
文字数をオーバーしてたので
質問するのに消さないと書き込めなかったので
消してしまいました。
下が【mail_input.php】の全文です
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp">
</head>
<body>
<h1 style="background:#CCCCCC">
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>
</tr>
</table>
<input type="submit" value="送信" />
<input type="reset" value="クリア" />
</form>
</body>
</html>
No.1
- 回答日時:
どのようなエラーが起こっているか具体例を書かないと判りません
・スクリプトのエラーなのか
単純なスクリプトミスから見直ししょう
・ネットワークのエラーなのか
ルータ・ファイヤウォールの設定は正しいですか?ポートは開放してありますか?
・送信サーバのエラー応答なのか
送信サーバーが許可していない経路・ドメインでの送信をしようとしていませんか?
このあたりが判らなければプログラムの問題というよりメール送信の仕組みを勉強したほうが良いです。
この回答への補足
回答ありがとうございます
勉強不足って事を痛感しました。
スクリプト的にはエラーは出ません
というか上のPHP文は本に載っている通り
なのでそのまま使用しました。
ルータ・ファイヤウォールの設定は
間違いなく設定してあります
何もエラーが起こらずただ送った物が届かないといった
現象が起こっております。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「SMTP」が「localhost」ではな...
-
(PHP)mb_send_mailでメール送信...
-
phpのheader("Location:#pos")...
-
PHPのif文でその処理を途中で抜...
-
Apache 2.4でphp-5.3を使いたい...
-
phpの中でphpを書けないか
-
require_once()でファイルが読...
-
header(Location:~)で$_SESS...
-
さくらインターネットでメール...
-
フォームで戻った際に入力済み...
-
PHPでメールを受信するには?
-
php4とphp5での数値の取り扱い...
-
PEAR(Image_QRCode)のエラー
-
テレメールとは?
-
再度、xamppにおけるjpgraphの...
-
<A href ~ と一緒に値を渡すには
-
PHP版のPDFlibのインストール
-
【PHP】tmp_nameの命名規約につ...
-
PHPからMSSQLへの接続結果の文...
-
phpのextension_dirを複数指定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
以下ですが?公開したらセキュ...
-
VB6.0とBASP21を用いてyahooメ...
-
phpをpsqlへ接続しようとするの...
-
C# メール送信ついて困っています
-
mb_send_mailでデタラメなメー...
-
(PHP)mb_send_mailでメール送信...
-
項目「sendmail_path」には メ...
-
iPhone 12miniってそろそろ替え...
-
PHP でmb_send_mailが上手くい...
-
BASP21メール送信(SMTP-AUTH認...
-
edmaxで送信できなくなりました
-
XAMPPのローカル環境でメール送...
-
PHPフォームから別ホスト経由で...
-
外部smtpサーバーを利用したメ...
-
拡張子PHP3のスクリプトを...
-
phpのheader("Location:#pos")...
-
PHPのif文でその処理を途中で抜...
-
FTPコマンドでディレクトリごと...
-
CFileDialogの最初のディレクト...
-
.phpと.incファイルの違いはな...
おすすめ情報