![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
WebからPHPのmb_send_mail関数を使用してメールを送信しようとしていますが、なぜか送信されません。
原因についてお分かりになればお教えください。
また、下記以外に必要な情報があればお教えください。
コマンドライン上でのmailコマンドによるメール送信は可能な状態です。
sendmailの代わりにqmailをインストールしているため、/usr/sbin/sendmailから/var/qmail/bin/sendmailへシンボリックリンクを貼っています。
また、PHPのmail()は"Call to undefined function: mail()"エラーとなりますが、mb_send_mail()ではエラーが発生しません。
●OS:TurboLinux7
●言語:PHP4.3.3
●phpのconfigure時のオプション:
./configure --with-apxs=/usr/sbin/apxs \
--enable-mbstring
●/usr/local/lib/php.iniのsendmail_path設定:
sendmail_path = /var/qmail/bin/sendmail
●テスト用PHPのソース(実行すると常に「メール送信エラー」になります)
<?php
$ans = mb_send_mail("メールアドレス","件名","本文");
if ($ans) {
print "<P>メール送信完了</P>";
}
else {
print "<P>メール送信エラー</P>";
}
?>
No.2ベストアンサー
- 回答日時:
最初に、PHP全部をゴリっと削除してしまってはどうでしょう?
ただわたしは、PHPをきれいサッパリ削除する方法を知らないのですが。。
「ディレクトリを削除してApacheの設定を変更!!」で
済むとも思えなくて。。
beginさん、ご存じです。。?(汗
PHPの削除方法が私もよくわからなかったのですが、下記のことをして解決しました。
1./usr/local/lib/phpディレクトリをmvで名前変更
2.再度configure
3.make cleanを実行
4. suでrootに変身
5. make install
ひょっとしたらmake cleanコマンド以降のみでよかったのかもしれません。
# ただ、まだ送信されたメールの日本語が文字化けするという問題が発生しているのですが、今回はこれにて完了といたします。
どうもありがとうございました。
No.1
- 回答日時:
sendmailではなくてqmailを使っておられるようにお見受けしますが、
PHPは、インストール時にsendmailが見つからなかった場合、
mail() という関数をインストールしないようです。
mb_send_mail() はただ mail() へパイプしているだけなので、
mail() が使えない場合は、mb_send_mail() も使用できません。
makeで作成されるphp_config.hに
#define HAVE_SENDMAIL という行を追加してから
再度インストールしてみて下さい。
この回答への補足
./configure、makeを行い、php_config.hに「#define HAVE_SENDMAIL 1」があるのを確認してからmake installまで再度行ってみましたが、状況に変化が出ませんでした。
# configure時のオプションに一部誤りがありました。
# --with-apxs=/usr/local/apache/bin/apxsでした。
# 申し訳ありません。
phpinfo()で確認してみると、どうも最初のインストール時からPHPのBuild日付が変わっていないようです。
すでにApacheにモジュールが組み込まれているために、make installに失敗しているのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php 完了画面の送信メールのコードを書いているのですが・・・ 2 2023/06/02 12:01
- CGI -T(汚染モード)でメールが送れません 1 2022/06/12 14:11
- Gmail 【お助け!】サーバーからのメール送信でGmailに送信されない問題について 1 2023/06/20 22:03
- PHP phpのメールフォームの完了画面でメール受信のコードを書いています。 1 2023/05/31 11:39
- その他(プログラミング・Web制作) laravel 本番環境でメールが送れません。 1 2023/02/17 17:57
- UNIX・Linux Ubuntuサーバーでメールを受信できない 7 2022/08/23 20:55
- UNIX・Linux postfix smtpサーバーリレーがTLSハンドシェーク失敗 1 2022/08/15 15:45
- その他(メールソフト・メールサービス) メールが送信できない 発信側でできる対策 3 2023/05/11 10:22
- Outlook(アウトルック) Outlookのメール送信を取り消す方法 1 2022/11/17 13:10
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
関連するカテゴリから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での添...
-
メールアドレス形式チェックソ...
おすすめ情報