![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
メール送信の本文をSmartyテンプレートにしようと考えています。。
しかし、メールの本文がSmartyのテンプレートの内容ではなく、真っ白になってしまい
困っています。
$body = $smarty->fetch('mail.tpl'); //メールのテンプレートをSmartyで読み込む
mb_language('japanese');
mb_internal_encoding('utf-8');
mb_send_mail($to,$subject,$body,$header); //メールの送信
■メールはきちんと受信できます。
■Smartyのテンプレートを読み込めていないのかと思い、
$bodyをprint($body)で確認しましたが、テンプレートの内容がきちんと表示されました。
■$body = "テスト"; と入力し、メールを送信した場合、
メールの本文は空白になりませんでした。
次に何を確認すればよいのか、わからなくなってきたので、
アドバイスをいただけないでしょうか。
宜しくお願いいたします。
No.1ベストアンサー
- 回答日時:
切り分け的には書いてある文からでは問題なさそうにしか思えません。
もしかすると、受信したメールのソースを表示してみるといいかも知れません。
thunderbirdにはその機能がありますが、ご使用のメーラにその機能があるかどうかは不明です。
あちこちのフリーメールに送ってみて、やはりすべて空白なのかどうかとか調べてみるという手はあるかも。
メール送信を関数化していて、$bodyはローカル変数でSmartyから読みこんだ値はグローバル変数に保存しているなんて事はないですよね?
print($body)で読みこめたかどうか確認したのは、mb_send_mailの位置(直前でも直後でも、mb_send_mailをコメントアウトして置き換えたでも可)ですよね?
なんとなくポカミスレベルの事じゃないかと感じてますが、具体的にどんなポカミスなのかってのは、想像できませんね。
この回答への補足
アドバイス頂きありがとうございます。
教えていただいた内容を実行し、前に進めました。そして、新たなことがわかりました。
プログラムを./start.phpのような形で、
コマンドから起動した場合、メール送信の本文はSmartyのテンプレートになるのですが、
プログラムから自動で起動した場合、メール送信の本文がSmartyのテンプレートにならない
ということがわかりました。
具体的には、専用のアドレスにメールが届くと、start.phpが働き、メールが送信される
仕組みです。
使っているレンタルサーバはサクラで、
.mailfilter にstart.phpのパスを書いて、start.phpを動かしています。
確認すべき事項等おわかりでしたら、再度、アドバイスいただけないでしょうか。
内容を変えて再度掲示板に投稿しようと考えているので、余裕のある場合のみアドバイスいただければ、幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセル VBA メール本文に指定セルに記載されているURLをリンクとして記載する方法 8 2022/08/08 07:50
- PHP phpのメールフォームの完了画面でメール受信のコードを書いています。 1 2023/05/31 11:39
- その他(プログラミング・Web制作) カラーミーのSmarty構文について 1 2022/10/09 13:55
- その他(Microsoft Office) outlookで宛先が異なるメールを一括送信する方法 outlookで200人それぞれをtoに指定し 2 2023/08/03 21:24
- Gmail 【お助け!】サーバーからのメール送信でGmailに送信されない問題について 1 2023/06/20 22:03
- PHP php 完了画面の送信メールのコードを書いているのですが・・・ 2 2023/06/02 12:01
- JavaScript カラーミーショップのsectionループ内で、[引数][戻り値]ありの関数的な処理を行いたいです。 1 2022/05/07 19:39
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) Excel VBA メール作成について 本文の中にExcel でコピーした図を上下に2つ 貼り付けを 2 2023/06/14 01:48
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
mailやmb_send_mail関数で、本...
-
さくらサーバーにて、phpからメ...
-
mb_send_mail関数が利用出来ない
-
mb_send_mailでタイトルにハテ...
-
PHPsendmailにて送信元を変更
-
PHP4.4.1でmb_send_mailの送信...
-
pearのMailライブラリがうまく...
-
コマンドプロンプト、VBSでの添...
-
PHPでの仮登録時の会員認証メー...
-
onedrive にexcelファイルをア...
-
別ファイルの変数を呼び出した...
-
PHPのif文でその処理を途中で抜...
-
フォントの色を変えるには?
-
.phpと.incファイルの違いはな...
-
「@$変数」の「@の意味は?」
-
【file_exists】ファイルが存在...
-
$_SESSION 有効期限をブラウザ...
-
stat failed
-
2つの画像ファイルが異なるファ...
-
PHPで新しいウインドウで開く命...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
さくらサーバーにて、phpからメ...
-
mb_send_mail関数が利用出来ない
-
ローカル環境でのメール送信
-
pearのMailライブラリがうまく...
-
メールの本文が取得できない
-
cronでメールを送信すると文字...
-
指定した時間にPHPプログラムを...
-
PHPからメールを送る@さくらイ...
-
mail関数を使った場合のReturn-...
-
mb_send_mailでのメール送信が...
-
ワードプレス 予約システム
-
mb_send_mailでタイトルにハテ...
-
mb_send_mailについて
-
phpでのメール送信
-
mb_send_mail()が使えない
-
PHP4.4.1でmb_send_mailの送信...
-
PHPで、一度に大量のメールの送...
-
mb_send_mailを実行するとエラ...
-
sendmail.phpとthanks.php
-
PHPでのフォーム送信・・・・
おすすめ情報