質問 > フロント機能 > 会員登録すると購入できない |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
watanabe |
投稿日時: 2008/6/8 9:10
対応状況: −−−
|
半人前 登録日: 2008/2/4 居住地: 投稿: 29 |
Re: 会員登録すると購入できない(追記3) すみません。上の書込みは私です。
ログインし忘れました |
seasoft |
投稿日時: 2008/6/8 9:55
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: 会員登録すると購入できない(追記3) jsのエラーからすると、元の <form> 要素の外に <input> 要素を移動してませんか?
|
watanabe |
投稿日時: 2008/6/8 12:29
対応状況: −−−
|
半人前 登録日: 2008/2/4 居住地: 投稿: 29 |
Re: 会員登録すると購入できない(追記3) seasoft様
情報ありがとうございました。朝からずっとチェックしていたのですが、seasoft様の情報をヒントに改めてページソースをチェック していたらおかげさまで原因らしきものが判明しました。 現在、ページには<form>〜</form>の箇所がいくつかありまして 一番上にログイン・ログアウト用のフォームのエリアがあるのですが deliv.phpのページだけ、何故かlogin.tplでいうところの <form name="login_form" id="login_form" method="post" action="<!--{$smarty.const.SSL_URL}-->frontparts/login_check.php" onsubmit="return fnCheckLogin('login_form')"> <input type="hidden" name="mode" value="login" /> <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> <input type="hidden" name="url" value="<!--{$smarty.server.PHP_SELF|escape}-->" /> の下の情報がすっ飛んでいて、</form>がない状態になって おりました。 それで、現状deliv.phpは <form> <form></form> と上が閉じていない状態なので、下のフォームを動かすと 前に書かせていただいたjavascriptのエラーとなって おかしな挙動をしているのではないか、と思われます。 ちなみにログイン部分のtpl部分は <form> <hidden> ユーザー名 (ログアウト用のボタン) </form>となっていて、他のページではログイン後全て 表示されているのに、/deliv.phpだけ ユーザー名 (ログアウト用のボタン) </form> がなくなってしまっているという状態です。 カートやマイページ、ユーザー作成ページなどは全てヘッダーが 共通なので、もし記述の不都合なら全ページOUTの はずなのですが、deliv.phpのページだけデータがやはり 引き継がれていないようです。まったく同じプログラムを 使用していて、例えばcart.phpはOKでdeliv.phpはだめ などという状況はあり得るのでしょうか? ご存知でしたらご教授いただけると助かります。 情報本当にありがとうございました。ある程度前進できました。 |
seasoft |
投稿日時: 2008/6/8 13:01
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: 会員登録すると購入できない(追記3) ブラウザでソースを見ると
<input type="hidden" name="url" value="*****" /> で終わっていますか? <div id="login"> は出力されていませんか? <div id="login"> よりも下は、変数による分岐処理があるので、ページ依存はありえると思います。
|
watanabe |
投稿日時: 2008/6/8 13:24
対応状況: −−−
|
半人前 登録日: 2008/2/4 居住地: 投稿: 29 |
Re: 会員登録すると購入できない(追記3) seasoft様
返信ありがとうございます。 ご指示の部分チェックいたしましたが、 <input type="hidden" name="url" value="*****" /> 以下の部分がすっかりなくなっております。 login.tplをカスタマイズしたソースが以下のものです。 <!--{if $tpl_login}--> <form name="login_form" id="login_form" method="post" action="<!--{$smarty.const.SSL_URL}-->frontparts/login_check.php" onsubmit="return fnCheckLogin('login_form')"> <input type="hidden" name="mode" value="login"> <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->"><input type="hidden" name="url" value="<!--{$smarty.server.PHP_SELF|escape}-->"> <!--{if !$tpl_disable_logout}-->ようこそ <!--{$tpl_name1|escape}--> <!--{$tpl_name2|escape}--> さん <a href="<!--{$smarty.server.PHP_SELF|escape}-->" onclick="fnFormModeSubmit('login_form', 'logout', '', ''); return false;" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('log2','','<!--{$TPL_DIR}-->img/(サイト名)/log-outo.gif',1)"> <img src="<!--{$TPL_DIR}-->img/(サイト名)/log-out.gif" name="log2"></a> </form> <!--{/if}--> <!--{else}-->ようこそ ゲスト さん<a href=""> <a href="http://(サイト名).jp/mypage/login.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('log1','','<!--{$TPL_DIR}-->img/(サイト名)/log-in.gif',1)"><img src="<!--{$TPL_DIR}-->img/(サイト名)/sign.gif" name="log1"></a> <!--{/if}--> <!--{if !$tpl_disable_logout}-->以下の部分がdelv.php で出力されずにformが壊れてしまう形になっております。 ここさえ直れば全て解決するような気がするのですが・・・ 書き方に何か問題があるのでしょうか? 丁寧に教えていただいてありがとうございます。感謝いたしております。 |
seasoft |
投稿日時: 2008/6/8 13:38
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: 会員登録すると購入できない(追記3) テンプレート(Smarty)って全く使ったこと無いので、勘ですが…
引用:
↓ 引用:
|
watanabe |
投稿日時: 2008/6/8 13:59
対応状況: −−−
|
半人前 登録日: 2008/2/4 居住地: 投稿: 29 |
Re: 会員登録すると購入できない(追記3) seasoft様
ありがとうございました。とりあえずログイン状態で 購入できました。やはり原因は、hidden以下のデータが 次ページから来ない。というところでした。 上記処理ですと、その部分は解決していませんが、 とりあえず、最悪の状況(会員なのに購入処理が出来ない) という状況は免れました。 ここ数日胃がひっくり返りそうだったので、今はなんだか 力が抜けております。 seasoft様、homan様、ゲストの皆様、本当に ありがとうございました。半分以上解決です(笑顔) |
watanabe |
投稿日時: 2008/6/8 20:50
対応状況: −−−
|
半人前 登録日: 2008/2/4 居住地: 投稿: 29 |
Re: 会員登録すると購入できない(追記3) あれから、なぜhidden以下のデータが抜けてしまうのか
必死に考えたり、あれこれ調べたのですが、 まったく手詰まりになってしまいました。 seasoft様のご指摘で、smartyのタグと</form>を入れ替えて とりあえず会員でも購入できる機能は回復したのですが、 やはりこの問題を根本的に解決するには、上記の問題は 避けて通れないようです。 追加ですが、会員で購入すると、deliv.phpからpayment.php confirm.php までが抜けていて、complete.phpにくると きれいに復活します。 全体でこの3ページだけがおかしな挙動をしめすのです。 かなりレアケースだとは思いますが、似たような現象を 経験なさったことがある方、何か手がかりをお持ちの方 申し訳ございませんが、ご教授いただくとうれしいです。 よろしくお願いいたします。 |
seasoft |
投稿日時: 2008/6/8 23:43
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: 会員登録すると購入できない(追記3) とりあえず、クリーンインストールから最短で再現できる手順を書いておいたら、時間のある人が試すかもしれませんよ(他人本位)
とりあえず、login.tpl を差し替えただけだと、再現しなそうです。 - EC-CUBEバージョン 2.1.1-beta - PHPバージョン PHP 5.2.5 - DBバージョン PostgreSQL 8.2.4 - Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14
|
watanabe |
投稿日時: 2008/6/9 9:44
対応状況: −−−
|
半人前 登録日: 2008/2/4 居住地: 投稿: 29 |
Re: 会員登録すると購入できない(追記3) seasoft様
書込みありがとうございました。 わたしもテストサーバで動かしているもので再現しようと したりしたのですが、うまく行きませんでした。 まさか仕様、ってことはないでしょうが(謎) (購入手続き中にいきなりログアウトっていうのも 考えにくいですが) まず再現してみます。 インストールからブロックの移植までを後でまとめて書いてみて 皆様のご意見を伺えたらなと思います。 おかげさまで、当初よりは大分進捗しました。 ありがとうございます。感謝しております。 |
« 1 (2) |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |