2012-01-07 2 views
-5

次の問題があります。php計算は電子メールではなくhtmlで動作します

私は店(Virtuemartプラットフォーム)から送信されたconfermation電子メールで余分な計算をしたいと思います。

2つの例については、下のスクリプトを参照してください。どういうわけか$ order_totalの文字列は確認メールでは機能しません.HTMLの注文レビューに正しい計算結果が表示されるためです。

は、これはいい作品:

<?php $less_costs = "5"; 
$order_total = "15"; 
$endtotal = abs(floor($order_total) - $less_costs); 
echo $endtotal ?><!-- output = 10 --!> 

(それは大丈夫レンダリングされるHTMLに)電子メールでこのdoesn''t作品

<?php $less_costs = "5"; 
$endtotal = abs(floor($order_total) - $less_costs);// $order_total is dynamic from the VM store 
echo $endtotal ?><!-- output = 5 --!> 

---- EDIT ----

私はそれがあまりにも簡単な質問ではないことを知っています。それについてもそれを説明するのではありません;)しかし、あなたの誰かが何とか私を助けてくれることを本当に願っています。

See this example(注文合計を含むメールを送信するconfirmation_email.tpl.php)。私は上記のコードをこのPHPファイル(適切な文字列呼び出しを伴う)に入れました。質問のすべての価格をレンダリングするps_checkout.phpの

See this example

+0

"機能しません"とはどういう意味ですか?何を手に入れますか? HTMLの外観はどうですか? –

+0

だから、私はあなたがないと推測しているのであなたの電子メールの$ order_totalを設定しています –

+0

$ endtotalをHTMLで表示すると(注文情報のオンライン版)、適切な金額が表示されます。しかし、電子メールの確認では、出力は計算された '10'の代わりに '5'のままです – Ruud

答えて

1

PHPはサーバー側言語です。メールサーバーはPHPコードを解釈できません。電子メールのコンテンツは、サーバー側で解析され、結果のHTMLが電子メールで送信されます。

+0

問題が見つかりました: 文字列の価格。だから私はそれを以下のように修正した: <?php $ less_costs = '5.00'; $ order_total = str_replace( "€"、 "、$ order_total); $合計= abs($ order_total - $ less_costs); echo $ totalrr?> とにかく私を助けようとしているThanx。 – Ruud

関連する問題