バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > ログイン状態で商品購入後にログアウトされる

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yk_ons
投稿日時: 2013/6/5 19:59
対応状況: −−−
新米
登録日: 2011/10/12
居住地:
投稿: 6
ログイン状態で商品購入後にログアウトされる
------------------------------------------------------------------------------------------
[EC-CUBE] 2.12.4(2.12.3から差分ファイルでアップデート)
[レンタルサーバ] GMOクラウド専用サーバ
[OS] CentOS5.4
[PHP] 5.1.6
[データベース] MySQL 5.0.22
[WEBサーバ] Apache 2.2.3
[ブラウザ] Firefox 21
------------------------------------------------------------------------------------------

お世話になります。

会員でログインした状態で商品の購入手続きを完了し、
もう一度商品を購入しようとすると、カートから購入手続きへ
遷移するタイミングでログアウトされ、空カートの画面に
戻されてしまいます。

------------------------------------------------------------
ログイン ⇒ 商品購入完了 ⇒ カートに商品を追加 ⇒
 購入手続きへ進む ⇒ ログアウトされカートが空に
------------------------------------------------------------

ログアウトされるまでは、会員ページの閲覧や
フォームの送信などは問題無く行えます。

また、管理画面にログインしているとそちらも同じタイミングで
ログアウトされてしまいます。

目に付く変化としては、購入手続きに進んでから空カートに戻る際、
URLに付与されている「transactionid」の値が変化しているようです。

(例)
http://www.example.com/cart/?transactionid=28b41260eea7a8xxxxxx
        ↓
http://www.example.com/cart/?transactionid=e4761760dbcfdxxxxxx


いくらかカスタマイズを行なっているため、それが原因かもと思ったのですが、
別の領域に2.12.4をインストールしたところ、そちらでも同様の現象が発生しました。


PHPの設定なのか、モジュールが足りていないのか、
原因が分からず困っております。

何かお分かりになる方がいらっしゃいましたら、
ご教示の程よろしくお願い申し上げます。
seasoft
投稿日時: 2013/6/6 2:06
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: ログイン状態で商品購入後にログアウトされる
当方開発環境(2.12デベロッパー版)では再現しませんね。。。


MySQL のオーバーフローで、類似した現象を生じる事象は見たことがありますが、それとも若干違うタイミングのようですし・・・

とりあえず、切り分けの意味で PostgreSQL で発現するか試すのも良いかもしれません。


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

yk_ons
投稿日時: 2013/6/6 21:07
対応状況: −−−
新米
登録日: 2011/10/12
居住地:
投稿: 6
Re: ログイン状態で商品購入後にログアウトされる
seasoft様
ご回答ありがとうございます。

データベースのみPostgreSQL(8.1.4)に変更してみましたが、
同様の現象が発生しました。。

どこでデータが消えるのかを検証したところ、
SC_Helper_Purchase.phpの223行目付近で消えている感じです。
---------------------------------------------------
// exit; //←ここで終了してカートに戻ると消えない
// 購入ボタンを押してから変化がないか
$quantity = $objCartSession->getTotalQuantity($cartKey);
// exit; //←ここで終了してカートに戻ると消える
---------------------------------------------------

もう少し調査してみようと思います。
seasoft
投稿日時: 2013/6/7 0:07
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: ログイン状態で商品購入後にログアウトされる
やはり違いますね。。。

getTotalQuantity のロジックを見ましたが、(ツッコミどころは多々ありますが) 本件の原因となりそうには見えませんね・・・

exit; でなく、return; で検証するのも、手だと思います。

あと、APC などの、PHP 高速化モジュールが導入されていたりしますか?


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

yk_ons
投稿日時: 2013/6/7 18:39
対応状況: 解決済
新米
登録日: 2011/10/12
居住地:
投稿: 6
Re: ログイン状態で商品購入後にログアウトされる
seasoft様
ご返事ありがとうございます。

高速化モジュール等は特に導入しておりません。
また、当件ですが一応解決しました。

購入完了時に $_SESSION[savecart_*****] を手動で
空にしてみたところ、ログアウトされる現象が無くなりました。

※SC_Helper_PurchaseのcleanupSessionに以下を追加
--------------------------------------------------
foreach( array_keys($_SESSION) as $k ){
if( preg_match("/^savecart_/",$k) ){
unset($_SESSION[$k]);
}
}
--------------------------------------------------

根本的な解決になっているのかどうか分かりませんが、
とりあえずは問題無く動いているようなので、
しばらくこれで様子を見てみようと思います。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,694名です
総投稿数は109,943件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1570
9
mcontact
1283
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.