バージョン選択

フォーラム

メニュー

オンライン状況

60 人のユーザが現在オンラインです。 (50 人のユーザが フォーラム を参照しています。)
登録ユーザ: 1
ゲスト: 59
jum もっと...

サイト内検索

質問 > フロント機能 > 商品詳細ページからお問い合わせへ遷移するには

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
投稿日時: 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
居住地:
投稿: 437
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
居住地:
投稿: 437
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
居住地:
投稿: 485
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-CUBE3っぽいテンプレート
GitHub で公開中
https://github.com/bluestylejp

お問い合わせ番号CSV登録&メール送信プラグイン
http://urx.red/qDT6

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のふたつある意味合いがわかりません。
基本的なことで申し訳ありませんが宜しくお願い致します。
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,070名です
総投稿数は110,021件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.