質問 > フロント機能 > お問い合わせフォームにサンプル請求を追加したい |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
hachimida |
投稿日時: 2011/5/26 15:58
対応状況: −−−
|
新米 登録日: 2011/5/26 居住地: 投稿: 3 |
お問い合わせフォームにサンプル請求を追加したい 初めてEC-CUBEをダウンロードしてサイトを構築しております。
お問い合わせフォームにサンプル請求として、チェックボックスで選択(複数選択可)してもらって送信する機能を追加したいと考え、以前このフォーラムでもご質問されていたのでそれを参考にし、テンプレートやphpファイルを変更している最中です。現在、フォームは完成し、ブラウザで確認用の画面まではうまく表示させることができました。しかし送信したメール本文にはチェックボックスで選択した値(文字)が適用されず表示できません。 どうすれば良いか教えていただけないでしょうか? どうぞよろしくお願い致します。 ------------------------------------------------------------------------------------------ [EC-CUBE] 2.11.1、新規インストール [レンタルサーバ] 自社サーバー [OS] CentOS Linux 5.6 [PHP] PHP 5.2.17 [データベース] MySQL 5.0.77 [ブラウザ] Firefox4.01 ------------------------------------------------------------------------------------------ 下記に変更、追加したものを記載致します。 ------------------------------------------------------------------------------------------ /data/Smarty/templates/default/contact/ ■index.tpl <table summary="お問い合わせ"> </table>内 -------------------------------------------- <tr> <th>ご希望のサンプル<span class="attention">※<br />複数選択可</span></th> <td> <p> <label><input type="checkbox" name="sample[]" value="1" <!--{if $arrForm.sample != '' && in_array('1',$arrForm.sample)}--> checked="checked" <!--{/if}--> />サンプル1</label> <label><input type="checkbox" name="sample[]" value="2" <!--{if $arrForm.sample != '' && in_array('2',$arrForm.sample)}--> checked="checked" <!--{/if}--> />サンプル2</label><br /> <label><input type="checkbox" name="sample[]" value="3" <!--{if $arrForm.sample != '' && in_array('3',$arrForm.sample)}--> checked="checked" <!--{/if}--> />サンプル3</label> <label><input type="checkbox" name="sample[]" value="4" <!--{if $arrForm.sample != '' && in_array('4',$arrForm.sample)}--> checked="checked" <!--{/if}--> />サンプル4</label> </p> </td> </tr> ------------------------------------------------------------------------------------------ /data/class/pages/contact/ ■LC_Page_Contact.php function lfInitParam(&$objFormParam) { }内 -------------------------------------------- $objFormParam->addParam("ご希望サンプル", 'sample' , array("column" => "sample", "convert" => "KVa" )); ------------------------------------------------------------------------------------------ /data/Smarty/templates/default/contact/ ■confirm.tpl <table summary="お問い合わせ内容確認"> </table>内 -------------------------------------------- <tr> <th>ご請求サンプル内容</th> <td> <!--{if $arrForm.sample != '' && in_array('1',$arrForm.sample.value|escape)}-->サンプル1<br /><!--{/if}--> <!--{if $arrForm.sample != '' && in_array('2',$arrForm.sample.value|escape)}-->サンプル2<br /><!--{/if}--> <!--{if $arrForm.sample != '' && in_array('3',$arrForm.sample.value|escape)}-->サンプル3<br /><!--{/if}--> <!--{if $arrForm.sample != '' && in_array('4',$arrForm.sample.value|escape)}-->サンプル4<!--{/if}--> <!--{foreach from=$arrForm.sample item=val}--> <input type="hidden" name="sample[]" value="$val" /> <!--{/foreach}--> </td> </tr> ------------------------------------------------------------------------------------------ /data/Smarty/templates/default/mail_templates/ ■contact_mail.tpl 最終行追加 -------------------------------------------- ご請求サンプル内容 <!--{if in_array('1',$arrForm.sample.value|escape)}-->サンプル1<!--{/if}--> <!--{if in_array('2',$arrForm.sample.value|escape)}-->サンプル2<!--{/if}--> <!--{if in_array('3',$arrForm.sample.value|escape)}-->サンプル3<!--{/if}--> <!--{if in_array('4',$arrForm.sample.value|escape)}-->サンプル4<!--{/if}--> <!--{foreach from=$arrForm.sample item=val}--> 種類:<!--{$arrForm.sample.$val|escape}--> <!--{/foreach}--> <!--{$tpl_footer}--> ------------------------------------------------------------------------------------------ 以上になりますが、ブラウザの確認用画面まではうまく表示されており、メール本文が ご請求サンプル内容 と空白になっております。 おそらくcontact_mail.tplの記述がおかしいのだと思うのですが、phpの知識がなく、困っております。また、他にも変更しないといけないファイルや箇所があるかもしれません。 どなたか教えていただけないでしょうか? よろしくお願い致します。 |
patapata |
投稿日時: 2011/5/26 18:21
対応状況: −−−
|
仙人 登録日: 2010/7/7 居住地: 神奈川県 投稿: 502 |
Re: お問い合わせフォームにサンプル請求を追加したい 確認ページに値が渡せてませんよ。
↓こんな感じに変更しましょう
---駄文--- またどうでもいいですが、 ダウンロードサイトでソフトの無料版ってことなら・・・ 無料商品として登録すれば通常商品同様に管理できると思うのですが(゜o゜) |
hachimida |
投稿日時: 2011/5/27 14:30
対応状況: 確認中
|
新米 登録日: 2011/5/26 居住地: 投稿: 3 |
Re: お問い合わせフォームにサンプル請求を追加したい patapata様
どうもありがとうございました。 うまくメール表示も動作いたしました。 無料商品として登録すれば通常商品同様に管理できる方法も併用して使用したいと思います。 ただ、使用するサンプルはダウンロード商品ではなく、全然違う商品なのでそれぞれを一括して選択し請求してもらおうと思っていますので大変助かりました。 あと、あつかましくて恐縮なのですが、ひとつ教えていただけないでしょうか? 現状の送信されたメールの本文では ------------------------------------------------------------------------ ■ご請求サンプル内容 サンプル1サンプル2サンプル3サンプル4 ------------------------------------------------------------------------ という風になりますが、サンプルごとに改行しようと思い、 contact_mail.tplファイルを下記のように<!--{""}-->を追加したら ------------------------------------------------------------------------ ■ご請求サンプル内容 <!--{if in_array('1',$arrForm.sample.value|escape)}-->サンプル1<!--{/if}--><!--{""}--> <!--{if in_array('2',$arrForm.sample.value|escape)}-->サンプル2<!--{/if}--><!--{""}--> <!--{if in_array('3',$arrForm.sample.value|escape)}-->サンプル3<!--{/if}--><!--{""}--> <!--{if in_array('4',$arrForm.sample.value|escape)}-->サンプル4<!--{/if}--> <!--{foreach from=$arrForm.sample.value item=val}--> <!--{$arrForm.sample.$val|escape}--> <!--{/foreach}--> ------------------------------------------------------------------------ (サンプル1とサンプル3を選択した場合) ■ご請求サンプル内容 サンプル1 サンプル3 (サンプル2とサンプル4を選択した場合) ■ご請求サンプル内容 サンプル2 サンプル4 という風に選択していない値のところも改行だけしてしましまいます。 <!--{if in_array('1',$arrForm.sample.value|escape)}-->サンプル1<!--{""}--><!--{/if}--> だと改行もしませんでした。 上記ファイルの記述が強制的に改行になっているのですが、 (サンプル1とサンプル3を選択した場合) ■ご請求サンプル内容 サンプル1 サンプル3 という風に選択した値だけを改行で記載させるにはどうしたらよいのでしょうか? お手数おかけしますがお教えしていただけないでしょうか? どうぞよろしくお願いいたします。 |
patapata |
投稿日時: 2011/5/27 18:34
対応状況: −−−
|
仙人 登録日: 2010/7/7 居住地: 神奈川県 投稿: 502 |
Re: お問い合わせフォームにサンプル請求を追加したい (ーー;)???
単純に1行でなく2行にするとかじゃ駄目なのか・・・
|
hachimida |
投稿日時: 2011/5/30 10:37
対応状況: −−−
|
新米 登録日: 2011/5/26 居住地: 投稿: 3 |
Re: お問い合わせフォームにサンプル請求を追加したい patapata様
どうもありがとうございました。 開始if、閉じifの次の改行コードは無視されるのですね。 勉強になりました。 お手数おかけし申し訳ございませんでした。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |