|
6月 26
|
PCでは問題なくクレジット決済で購入できるのに、モバイルではできない問題に直面。
クレジット決済画面でカード番号などを入力したあと、自サイト(EC-CUBE)に戻ってきたときに「不正なページ移動です」とでる。
ちなみに、コンビニ決済は問題なし。
ということはセッション絡みということはわかるんやけど、どこが悪いのかが分からない…
しかし、神は私を見放さなかった!
EC-CUBEコミュで解決策がありました。
micaさん、感謝します。あなたは私にとっての神です。
/data/class/session/SC_SessionFactory.phpを以下のように修正
function getInstance() {
$type = defined('SESSION_KEEP_METHOD') ? SESSION_KEEP_METHOD : '';
// ☆モバイル用ページの場合はセッション管理をuseRequestで固定。☆
$type = defined('MOBILE_SITE') ? 'useRequest' : $type;
switch($type) {
// セッションの維持にリクエストパラメータを使用する
case 'useRequest':
$session = new SC_SessionFactory_UseRequest;
defined('MOBILE_SITE')
? $session->setState('mobile')
: $session->setState('pc');
break;
// クッキーを使用する
case 'useCookie':
default:
$session = new SC_SessionFactory_UseCookie;
break;
}
return $session;
}
このスレは「モバイルで商品の注文ができません」ということで、買い物かごにすら商品が入らない現象だったので、私の現象とは違うだろうと思っていた。
先入観で決め付けず、とりあえず試してみることは大事だと、改めて思った。
Recent Comment