質問 > フロント機能 > 詳細メインコメントにJavaScript |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
leoism |
投稿日時: 2009/2/18 11:30
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
詳細メインコメントにJavaScript いつもお世話になっています。
使用環境は下記です。 EC-CUBE:2.3.3 MySQL:4.1.21 PHP:4.4.6 商品詳細メインコメントに入力する際、Javascriptタグを 使おうとすると、狙い通りの表示ができなくて、 使った部分のソースを見てみると、 #script tag escaped# と表示されています。 ふと、思いついてデータベースのデータを見たのですが、 ここで既に#script tag escaped#となっていました。 おそらく、データを書き込みに行ったときに、このように変換されて しまっているのだと思うのですが、自分でわかるのはここまでで どこをどのように対処すればよいのかわかりません。 同じ経験をされた方や、対処法をご存知のかた、 よろしければ教えていただけませんでしょうか。 よろしくお願いいたします。 |
homan |
投稿日時: 2009/2/18 11:45
対応状況: −−−
|
仙人 登録日: 2007/7/2 居住地: 宮崎県宮崎市 投稿: 633 |
Re: 詳細メインコメントにJavaScript 手前味噌で恐縮ですが、参考になれば幸いです。
EC-CUBEでscriptタグを使う http://www.cagolab.jp/archives/knowledge.php?itemid=391
|
leoism |
投稿日時: 2009/2/18 12:16
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 詳細メインコメントにJavaScript 早速、回答していただきありがとうございます。
教えていただいたのを参考にして、試してみました。 が、結果はだめでした。 試したものを掲載します。 template>admin>products>product.tpl 内の <textarea name="main_comment" value="<!--{$arrForm.main_comment|escape}-->" maxlength="<!--{$smarty.const.LLTEXT_LEN}-->" style="<!--{if $arrErr.main_comment != ""}-->background-color: <!--{$smarty.const.ERR_COLOR}--><!--{/if}-->" cols="60" rows="8" class="area60"><!--{$arrForm.main_comment|escape}--></textarea> ここを、 <textarea name="main_comment" value="<!--{$arrForm.main_comment|escape}-->" maxlength="<!--{$smarty.const.LLTEXT_LEN}-->" style="<!--{if $arrErr.main_comment != ""}-->background-color: <!--{$smarty.const.ERR_COLOR}--><!--{/if}-->" cols="60" rows="8" class="area60"><!--{$arrForm.main_comment|escape|smarty:nodefaults}--></textarea> としました。 ちなみに、 escapeを削除した <!--{$arrForm.main_comment|smarty:nodefaults}--> も試してみたのですが、やはり#script tag escaped# となりました。 そもそもsmarty:nodefaultsの適用の仕方が間違っているのか、 ほかのテンプレートも同じように直さなければいけないのか、 よろしければ、教えていただけますでしょうか。 よろしくお願いいたします。 |
seasoft |
投稿日時: 2009/2/18 12:25
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7369 |
Re: 詳細メインコメントにJavaScript 確認画面の <input type="hidden" ... の書き出し辺りじゃないですかね?
あと、フロント機能の当該項目の表示箇所も必要な予感。
|
homan |
投稿日時: 2009/2/18 13:17
対応状況: −−−
|
仙人 登録日: 2007/7/2 居住地: 宮崎県宮崎市 投稿: 633 |
Re: 詳細メインコメントにJavaScript (ちょっと試す暇がないので、リンク先のブログ記事にかいている自分の言葉を信じると)
DBに書き込む際には<script>タグとしてちゃんと登録されているようなのですが、seasoft様のおっしゃるとおりフロント画面の該当箇所表示時に置き変わらないようにする必要があったと思います。 つまり管理側のテンプレートではなくて(これも必要になっているかもしれませんが)、 フロント側の詳細ページ用テンプレート(デザイン管理から変更できるところ)の 詳細コメント表示部分に追記してみてください。 はずしていたらごめんなさい・・・時間があったら試してみます。 #追記 気になったので確かめました・・・ やっぱり管理側のテンプレートのtextareaに挿入されるデータに対してsmarty:nodefaultsを挿入するっぽいですね。 念のため確認ですがテンプレートは正常にアップロード(上書き)できていますか? たまにファイルのパーミッションや所有者の関係でうまくいっていない可能性もあります。 ちなみに全く関係ないかもしれませんが、
textareaって、value要りましたっけ?
|
leoism |
投稿日時: 2009/2/18 14:26
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 詳細メインコメントにJavaScript 出来ました。
修正したのは以下です。 smary:nodefaultsを追加したところ。 detai.tplの該当箇所 admimフォルダ>products.tplの該当箇所 adminフォルダ>confirm.tplの該当箇所 seasoft様、homan様ありがとうございました。 ちなみに <textarea name="main_comment" value="<!--{$arrForm.main_comment|escape}-->" はデフォルトの状態でこうでした。 |
sakana |
投稿日時: 2009/2/27 11:59
対応状況: −−−
|
半人前 登録日: 2009/1/16 居住地: 投稿: 22 |
Re: 詳細メインコメントにJavaScript 同じく、scriptタグが使えず、同じように修正しているのですが、
エスケープされてしまいます。 修正したのは、3ファイルです。 detai.tplの該当箇所 <p><!--★詳細メインコメント★--><!--{$arrProduct.main_comment|nl2br|escape|smarty:nodefaults}--></p> admimフォルダ>product.tplの該当箇所 <tr> <td bgcolor="#f2f1ec" width="160" class="fs12n">詳細-メインコメント<span class="red">(タグ許可)*</span></td> <td bgcolor="#ffffff" width="557" class="fs10n"> <span class="red12"><!--{$arrErr.main_comment}--></span> <textarea name="main_comment" value="<!--{$arrForm.main_comment|escape}-->" maxlength="<!--{$smarty.const.LLTEXT_LEN}-->" style="<!--{if $arrErr.main_comment != ""}-->background-color: <!--{$smarty.const.ERR_COLOR}--><!--{/if}-->" cols="60" rows="8" class="area60"> <!--{$arrForm.main_comment|escape|smarty:nodefaults}--></textarea><br /><span class="red"> (上限<!--{$smarty.const.LLTEXT_LEN}-->文字)</span></td> </tr> adminフォルダ>confirm.tplの該当箇所 <tr> <td bgcolor="#f2f1ec" width="160" class="fs12n">詳細-メインコメント</td> <td bgcolor="#ffffff" width="557" class="fs12n"> <!--{$arrForm.main_comment|nl2br|escape|smarty:nodefaults}--> </td> </tr> 他修正するファイルなどありましたら教えて頂きたいです。 |
sakana |
投稿日時: 2009/3/2 17:59
対応状況: −−−
|
半人前 登録日: 2009/1/16 居住地: 投稿: 22 |
Re: 詳細メインコメントにJavaScript 商品登録確認画面までは、scriptがエスケープされなくなりました。
ですが、商品詳細ページで確認すると、 script tag escapedという表示なってしまいます。 修正方法などありましたら、教えてくださいよろしくおねがいします。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |