![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
PHPを利用して、メールを送れません。
PHP4.3.10を使っています。レンタルサーバーとして、さくらインターネットのレンタルサーバー(プレミアム)を利用しています。
以下のようなスクリプトを書いたのですが、指定されたアドレスにメールが届いた気配がありません。何か、設定したりしないといけないとか、初歩的なミスかと思うのですが、何が悪いのでしょうか?
<?php
mb_language('Japanese');
mb_send_mail('xxx@xxx.xx.xx','やぁ','届いた?');
?>
No.1ベストアンサー
- 回答日時:
ソースには問題無いはずですがEUCで保存されてますよね?
考えられる問題は
・その他の引数が入っていない(通常は必要なものは補完されますので必要ありませんが)
念のため指定してはどうでしょうか。
どこかのMLリストでReturnpathヘッダーを付けたら送信できた。という
スレッドを見たことがあります。
サーバー側で差出人なしのメールを破棄しているかもしれません。
通常はphp.ini内のsendmail_from欄を参照し
NULLであればroot@サーバー名 になるはずです。
・マルチバイト関数が有効になっていない
PHPのconfigure時に--enable-mbstring が有効になっていないと利用できないはずです。
phpinfo()関数を実行してmbstring項目の該当値がenableになっていなければいけません。
もっとも、この場合はエラーを吐くはずなんですが・・・
・php.iniの設定でsendmailへのpath設定されていない
あり得ないとは思いますがsendmailへのpathが設定されていない可能性があります。
コレばかりはサーバー管理者しか設定できませんので管理者に連絡するしかありません。
通常は自動認識してくれるはずなんですが・・・
この時もエラーを吐いてくれるはず。
もしマルチバイト系が利用できないのであれば自分で適切にエンコーディングして
mail()を使って送信するしかないですね。
mb_send_mail()は自動的にエンコーディングを行いmail()に投げてくれる関数ですから。
なにかエラーメッセージは表示されていませんか?
念のためmb_send_mailを実行したときにTrueが返ってきているか
確認してください。
<?php
if(mb_language('Japanese')){
echo "languageはJapaneseに設定されました。<BR>";
}else{
echo "languageはJapaneseに設定できませんでした<BR>";
}
if(mb_send_mail('xxx@xxx.xx.xx','やぁ','届いた?')){
echo "正常に処理されました。<BR>";
}else{
echo "正常に処理されませんでした。<BR>";
}
?>
MTAのログなんかも確認できると良いのですが
レンタルサーバーでは無理かもしれません。。。
試行錯誤してみた結果、驚くべきことに、
さくらインターネットによって設定されていた、php.iniのsendmailへのパスの初期値が、間違っていました。
ご迷惑をおかけしました。どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(メールソフト・メールサービス) ドメイン間違えでエラー送信メールが来ない 1 2022/05/10 18:44
- その他(Microsoft Office) パワークエリの複数ファイルのデータ統合について 3 2022/07/14 17:06
- Yahoo!メール yahooメール使用できなくなった。 1 2022/07/05 11:45
- Gmail 【お助け!】サーバーからのメール送信でGmailに送信されない問題について 1 2023/06/20 22:03
- SoftBank(ソフトバンク) iPonneのメール復旧。 4 2023/07/28 19:36
- UNIX・Linux redmineにメールを飛ばす方法 1 2022/09/13 22:02
- PHP php 完了画面の送信メールのコードを書いているのですが・・・ 2 2023/06/02 12:01
- 郵便・宅配 オンラインクレーンゲームの配送について 2 2022/08/24 01:28
- その他(メールソフト・メールサービス) Gメールの設定について教えて下さい。普通の送信者からのメールが自動で迷惑メールに受信しています。 グ 1 2022/11/19 21:40
- Amazon Amazonの商品到着の日時がコロコロ変動… 皆さん、Amazonで商品を注文しても 「お届け日」が 4 2023/06/04 13:07
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Parse errorの対処法について
-
さくらサーバーにて、phpからメ...
-
ローカル環境でのメール送信
-
mb_send_mail関数が利用出来ない
-
フォントの色を変えるには?
-
透過PNGが透過されない!!
-
ImageCreate関数が undefined f...
-
onedrive にexcelファイルをア...
-
「クラス関数」「メンバ関数」...
-
FTPコマンドでディレクトリごと...
-
.phpと.incファイルの違いはな...
-
データ送信をボタンを押さずに...
-
phpのheader("Location:#pos")...
-
str ! = NULL
-
複数ファイルを連続でダウンロード
-
パースエラーとは?
-
rmdirでフォルダが消せません
-
PHP8を使うと、大量のWarningが...
-
PHPでFilename cannot be empty...
-
PHPの変数で最初から2行分の文...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
さくらサーバーにて、phpからメ...
-
mb_send_mail関数が利用出来ない
-
ローカル環境でのメール送信
-
pearのMailライブラリがうまく...
-
メールの本文が取得できない
-
PHPからメールを送る@さくらイ...
-
指定した時間にPHPプログラムを...
-
mail関数を使った場合のReturn-...
-
mb_send_mailでのメール送信が...
-
cronでメールを送信すると文字...
-
mb_send_mailについて
-
ワードプレス 予約システム
-
mb_send_mailでタイトルにハテ...
-
mb_send_mail()が使えない
-
PHPで、一度に大量のメールの送...
-
phpでのメール送信
-
PHP4.4.1でmb_send_mailの送信...
-
PHPでのフォーム送信・・・・
-
コマンドプロンプト、VBSでの添...
-
メールアドレス形式チェックソ...
おすすめ情報