バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > ログイン後、元いたページに戻る

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ac3
投稿日時: 2009/7/10 22:03
対応状況: −−−
新米
登録日: 2009/4/16
居住地:
投稿: 3
ログイン後、元いたページに戻る
ログインした後、元いたページに戻るようにするにはどうすればいいでしょうか。
詳細に教えていただけると助かります。

AMUAMU
投稿日時: 2009/7/10 23:11
対応状況: −−−
登録日: 2009/5/2
居住地: 東京都
投稿: 2712
Re: ログイン後、元いたページに戻る
リダイレクトの処理に修正が必要ですね
例外系を考えたり環境差違を考えるとちょっとめんどくさいところです


----------------
EC-CUBE公式エヴァンジェリスト
EC-CUBEインテグレートパートナー (株)スピリット・オブ
移転・拡張・高速化・問題解決
各種カスタマイズ・支援依頼承ります。

[url=h

seasoft
投稿日時: 2009/7/11 7:42
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: ログイン後、元いたページに戻る
URL + POSTの値をカバーするという辺りで、ある程度処理できるとは思います。

ただし、PRGパターン以外の箇所は、最後に開いた URL で何か DB あくしょんがあアクションがあると、本当にそのページに戻してよいのかという課題が残る場合も。


EC-CUBE ではありませんが、ログイン関連のページ遷移に必要だった遷移数をカウントしておいて、その数分を JavaScript で戻すという処理をしたことがあります。参考まで。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

ramrun
投稿日時: 2009/7/11 10:36
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: ログイン後、元いたページに戻る
ひと言でログインといっても
フロントに配置したログインブロックからログインするのと
MYページに入ろうとしてログインするのと
注文処理の遷移途中でログインするのとでは意味が変わってきます。

SC_View.phpにgetPrevURLメソッドがあるので、
リダイレクトのときにソレを利用するようにすれば前のページに戻れますが、
戻り先が商品一覧で複数ページの場合は↓の件も...
買い物を続けるボタンのリンク先
it3
投稿日時: 2009/9/22 18:20
対応状況: −−−
一人前
登録日: 2009/3/16
居住地:
投稿: 94
Re: ログイン後、元いたページに戻る
こちらのスレッドが立ってから、時間が経っているので既に解決済みかも知れませんが、私も丁度同じような事をしていましたので、今後どなたかの参考やお役に立てればと思い載せておきます。
私の場合は、特定のページだけでもログイン後に元いたページに戻るものです。
もし、私の方法があまり良くないものでしたら、どなたかご指摘ください。
====================================================================
【元となるページ】

<form>の後辺りに、↓を追加。(nameやvalueは任意で。)
---------------------------------------------------------
<input type="hidden" name="login_page" value="bpage" />
---------------------------------------------------------

================================================================
【LC_Page_FrontParts_LoginCheck.php】

function process()内の96行目辺りの

------------------------------------------------------ if($objCustomer->getCustomerDataFromEmailPass($arrForm['login_pass'], $arrForm['login_email'], true)) {
$this->sendRedirect($this->getLocation(URL_DIR, array(), false));
exit;
-------------------------------------------------------
を↓に
--------------------------------------------------------
if($objCustomer->getCustomerDataFromEmailPass($arrForm['login_pass'], $arrForm['login_email'], true)) {

if($_POST['login_page'] != "bpage"){
$this->sendRedirect($this->getLocation(URL_DIR, array(), false));
}else{
$this->sendRedirect($this->getLocation($_POST['url'], array(), false));
}
exit;

==============================================================
私もEC-CUBEを熟知しているわけではありませんので、環境によっては動作が変わるかも知れません。あくまでも同じような事をされようとする方の参考になればと思います。

※追記

こちらは、EC-CUBE公式ガイドブック カスタマイズ編での
”ログインフォームを自由に配置する”を行った上でのものです。



**************************************
EC-CUBE 2.3.4
DBサーバ MySQL
PHP 5.1.6
seasoft
投稿日時: 2009/9/23 2:20
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: ログイン後、元いたページに戻る
最近コードを査読していて気づいた別のアイディアです。

EC-CUBE には、以前に開いたURLをセッション変数に保持する仕組みが用意されています。これを利用すれば、案外簡単に実現できるかもしれません。

多分、ログイン絡みの処理を「以前に開いたURL」として記録しないように改訂するだけで、何とかなりそうな予感もします。

・・・とはいえ、この機構、画面遷移によっては、現状で不具合が発生するので、これ以上複雑なことをさせると余計に厄介なことになるかもしれませんが・・・


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,992名です
総投稿数は110,019件です

投稿数ランキング

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.