ログイン
新規登録
パスワード紛失
メインメニュー
フォーラム
オンライン状況
58 人のユーザが現在オンラインです。 (44 人のユーザが フォーラム を参照しています。)
登録ユーザ: 4
ゲスト: 54
yamakou, a-003, 55eccube, simpson, もっと...
広告
質問 > フロント機能 > 商品詳細ページからお問い合わせへ遷移するには
フロント機能
新規スレッドを追加する

EC-CUBE ASP登場
スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
投稿日時: 2007-8-9 16:11
対応状況: −−−
商品詳細ページからお問い合わせへ遷移するには
単純遷移なら簡単にできたのですが(<a href>タグで"contact/index.php"ページを指定)、
その際、お問い合わせの本文部分("contents")に商品名を初期値として入れておきたいと考えています。

hiddenかparamかで渡すのかと考えたのですが、PHPは初心者のためよく分からず、値の受け渡しができません。。

アドバイスいただけませんでしょうか。
ryo
投稿日時: 2007-8-9 17:34
対応状況: −−−
一人前
登録日: 2007-7-26
居住地: 関西
投稿: 86
Re: 商品詳細ページからお問い合わせへ遷移するには
試してないですが、hidden+Javascriptでできそうじゃないですかね。

時間があるときに試してみます。
ryo
投稿日時: 2007-8-9 17:51
対応状況: −−−
一人前
登録日: 2007-7-26
居住地: 関西
投稿: 86
Re: 商品詳細ページからお問い合わせへ遷移するには
少し時間があったのでやったら割と単純にできましたよ。

まず、管理画面の「デザイン管理」から「ページ詳細設定」で「商品詳細ページ」を編集します。
その時の例は下のformを追加する感じ
引用:

<form method="post" action="<!--{$smarty.const.SITE_URL}-->contact/">
<input type="hidden" name="products_name" value="<!--{$arrProduct.name|escape}-->" />

<input type="submit" name="" value="この商品について問い合わせる" />
</form>

赤字の部分はSSLに飛ばすなら「$smarty.const.SSL_URL」に変更。
※ 既存のformタグの内側に挿入しないように注意。その場合はgetが無難?


それから、「data/Smarty/templates/contact/index.tpl」を下記のように編集。
引用:

152行目あたり:
<textarea name="contents" cols="60" rows="20" class="area60" wrap="hard"
maxlength="<!--{$smarty.const.LTEXT_LEN}-->" style="<!--{$arrErr.contents|sfGetErrorColor}-->">
<!--{$smarty.post.products_name|escape}--><!--{$contents|escape}-->
</textarea>

赤字を追加。


これだけでいけますよ。
ゲスト
投稿日時: 2007-8-9 19:12
対応状況: −−−
アドバイス頂き、ありがとうございます。
ソースを拝見させていただいて、分かりました。。

1つの<form>内に「かごに入れる」と「問い合わせ」にボタンを設置しようとしていました。
値の受け渡しがそれでないとできない!と思い込んでいたのですが、よく考えると置かれているformで選択した値などを受け渡すわけではなく、このページ表示時に保持している値を受け渡すのですから、<form>を分けても何の問題も有りませんでした…
ウッカリです…

アドバイス頂き、ありがとうございました!!
お教えいただいたソースで動きました。
tonton
投稿日時: 2010-2-5 12:42
対応状況: −−−
仙人
登録日: 2008-8-14
居住地:
投稿: 436
Re: アドバイス頂き、ありがとうございます。
ログイン状態でお問い合わせページを開くと、ユーザー情報(名前、メールアドレスなど)は、入力された状態で開きます。

ところが、新しいバージョンで、なのか、コミュ版で、なのかはわからないのですが、こちらのカスタムを行い、商品詳細ページからFORMでお問い合わせページを開くと、email02の値が読み込めないようです。お問い合わせ画面では、確認用のメールアドレス欄だけが入力値空白の状態で開き、うっかりそのまま送信しようとすると、メール入力のエラーがでて再入力を促されるのに、お問い合わせ自体は送信されてしまっている、ということになります。

ちなみに、商品詳細ページからでも、<a>タグでお問い合わせページへのリンクを貼ると、普通に確認用メールアドレスも読み出せているので、FORM特有の現象だと思うのですが、detail.tplのFORMのMETHODをGETにすると、確認用メールアドレスは読み出せるようになりましたが、今度は、お問い合わせ画面で商品名は、表示されなくなりました。

<!--{$smarty.post.products_name|escape}-->

の値を、FORMのMETHODをGETにして送信しても読み出せるようにするには、どのように変更したらいいでしょうか?
tonton
投稿日時: 2010-2-5 14:02
対応状況: −−−
仙人
登録日: 2008-8-14
居住地:
投稿: 436
Re: アドバイス頂き、ありがとうございます。
自己レスですが、

detail.tplのほうのFORMは、method="get"とし、/contact/index.tplのほうは、
<!--{$smarty.request.products_name|escape}-->
とすることで、解決しました。

その他の部分に問題があるかどうかまで、検証ができていないので、これから実装される方のためにも、何か問題がありましたら、アドバイスをいただけるとうれしいです。
george
投稿日時: 2010-5-21 18:45
対応状況: −−−
半人前
登録日: 2010-3-30
居住地: Niigata
投稿: 12
Re: アドバイス頂き、ありがとうございます。
横からすいません。

こちらのスレッドを参考に商品詳細から商品をお問い合わせ項目に遷移させることができました。ありがとうございます。
あと、さらに金額も遷移させたいのですがphp初心者のためどなたかアドバイスをいただけたらありがたいです。



現在試したこと
data/Smarty/templates/contact/index.tpl
お問い合わせ内容部分に
<textarea name="contents"
class="area380"
cols="60"
rows="20"
style="<!--{$arrErr.contents|sfGetErrorColor}-->"><!--{'$smarty.request.products_name|cat:'の値段の'|cat:$price|cat:'円です。'}--><!--{$contents|escape}--></textarea>

として

contact/index.tpl
内の
<input type="hidden" name="products_name" value="<!--{$arrProduct.name|escape}-->" />

上記の記述<!--{$arrProduct.name|escape}-->を単価を含むものにするか、金額の<!--{$arrProduct.name|escape}-->" />のようなものを追加すればいけるのではないかと考えておりますがarrProduct.nameを変更するためにどこから捜したらよいのかわかりません。
どなたかご教授いただけたらありがたいです。宜しくお願い致します。
flealog
投稿日時: 2010-5-21 22:25
対応状況: −−−
長老
登録日: 2008-6-10
居住地:
投稿: 191
Re: アドバイス頂き、ありがとうございます。
規格を考えると頭が痛いですが・・・^^;
簡易的なものでしたら以下でどうでしょうか?



/data/Smarty/templates/default/detail.tpl

<form method="post" action="<!--{$smarty.const.SITE_URL}-->contact/">
<input type="hidden" name="products_name" value="<!--{$arrProduct.name|escape}-->" />
<input type="hidden" name="products_price_min" value="<!--{$arrProduct.price02_min}-->" />
<input type="hidden" name="products_price_max" value="<!--{$arrProduct.price02_max}-->" />

<input type="submit" name="" value="この商品について問い合わせる" />
</form>

/data/Smarty/templates/default/contact/index.tpl

<!--{$smarty.post.products_name|escape}-->
<!--{if $smarty.post.products_price_min == $smarty.post.products_price_max}-->
<!--{$smarty.post.products_price_min|sfPreTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->
<!--{else}-->
<!--{$smarty.post.products_price_min|sfPreTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->〜<!--{$smarty.post.products_price_max|sfPreTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->
<!--{/if}-->円


postのままですので、tonton様のおっしゃられているバグが残っていると思われますが・・・
外してたらごめんなさい。


----------------
テンプレート格安販売&EC-CUBE総合情報サイト
http://easy-cube.net/

カスタマイズメモブログ
http://easy-cube.net/memo/

george
投稿日時: 2010-5-22 8:13
対応状況: −−−
半人前
登録日: 2010-3-30
居住地: Niigata
投稿: 12
Re: アドバイス頂き、ありがとうございます。
flealog様早速アドバイス頂きありがとうございます!知識が足らずに行き詰っていました。

上記を参考に確認してみます!
george
投稿日時: 2010-5-22 10:06
対応状況: −−−
半人前
登録日: 2010-3-30
居住地: Niigata
投稿: 12
Re: アドバイス頂き、ありがとうございます。
tonton様、flealog様

ありがとうございました。

上からの内容で
method="get" postをrequest
としているので

contact/index.tpl内のお問い合わせ内容に

<!--{$contents|escape}--><!--{if $smarty.request.products_price_min == $smarty.request.products_price_max}-->
<!--{$smarty.request.products_price_min|sfPreTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->
<!--{else}-->
<!--{$smarty.request.products_price_min|sfPreTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->〜<!--{$smarty.request.products_price_max|sfPreTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->
<!--{/if}-->

とすることで表示させることができました。

さらになのですが、detail.tpl内の金額の後に文字を入れて渡したい
と考えたのですが

<input type="hidden" name="products_price_min" value="<!--{$arrProduct.price02_min}-->" />
<input type="hidden" name="products_price_max" value="<!--{$arrProduct.price02_max}-->" />

とproducts_price_minとproducts_price_maxのふたつある意味合いがわかりません。
基本的なことで申し訳ありませんが宜しくお願い致します。
12 次へ→
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

 
EC-CUBEダウンロード
正式版(zip版) 正式版(tar.gz版)
パートナー募集
構築事例募集
EC-CUBE寄付支援プロジェクト
リンク
統計情報
総メンバー数は4,867名です
総投稿数は31,478件です

投稿数ランキング
1
seasoft
5033
2
AMUAMU
917
3 ramrun 789
4
nanasess
771
5
homan
547
6 tonton 436
7
kishik
381
8
tao_s
355
9
ecbg
311
10 x41 299
11
DDR
259
12 arts 229
13 pineray 209
14
kvex2004
205
15
flealog
191
16
55eccube
163
17
DELIGHT
149
18 nanakoko 139
19
mahalo_c
136
20 popo 134
21 kurobon 122
22
yokoshima
113
23
Oba
106
24
takoyaki
105
25 lvsa 104
26
lucky7
101
27 mi-taro 100
28 it3 92
29
sakurai07
89
30 Masashige 89
31
kaoring777
89
32
illfrog300
88
33
ryo
86
34 tao 82
35 tmtqn543 82
36 mkhkck 79
37 bott 78
38 hunterman 78
39
saratoga
76
40
asayama
70
41
vexit
70
42
osamusi
66
43
lockon_admin
65
44 kana 64
45
kishimoto
63
46
hogehoge
63
47 harutom 63
48 fsv_g2 61
49 NSX 61
50 fukuma 60
Copyright© LOCKON CO.,LTD. All Rights Reserved.