質問 > 管理機能 > セッションの引き継ぎができない |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
bysk |
投稿日時: 2017/3/10 1:00
対応状況: −−−
|
半人前 登録日: 2016/5/26 居住地: 投稿: 22 |
セッションの引き継ぎができない [EC-CUBE] 3.0.10
[レンタルサーバ] hetemlサーバ [サーバーOS] Linux [PHP] PHP 5.4.27 [データベース] MySQL 5.6.13 [WEBサーバ] Apache [ブラウザ] Chrome/50.0.2661.102 [導入プラグインの有無] GmoPaymentGateway [やりたい事] あるサイトからECCUBEページへリファラを掛けており、そのサイトからのみアクセスを許可しております。 下記の様なイメージです hoge.com/shop.php→EC CUBEページ hoge.com/shop.phpからアクセスした場合 $_SESSION['judge']にOKフラグ $_SESSION['judge']がOKフラグじゃない場合はng.phpにリダイレクトさせています。 TOPページは上手くいくのですが商品ページ等、下層ページにいくとセッションの値が引き継がれずにNG処理になってしまいng.phpにリダイレクトされてしまいます。 TOPページから下層ページに$_SESSION['judge']を引き継ぎたいのですが方法が分からず困っております。 コントローラやフックポイント等の設定が必要なのでしょうか? そのあたりがイマイチ理解できておらずどなたかご教示頂けますと幸いです。 どうぞ宜しくお願い致します。 index.phpに下記の記述をしております。 // リファラ取得 $referrer = $_SERVER['HTTP_REFERER']; // 現状のURL取得 $_SESSION['now_url'] = $_SERVER['REQUEST_URI']; //管理画面URL(ecadmin)が含まれている場合adminフラグ if(strpos($_SESSION['now_url'], "ecadmin") !== false){ $_SESSION['admin'] = "admin"; }else{ $_SESSION['admin'] = "no_admin"; } // 指定ページからアクセスの場合、もしくは管理画面の場合はOK if ($referrer == "hoge.com/shop.php" || $_SESSION['admin'] == "admin" || $_SESSION['judge'] == "OK"){ $_SESSION['judge'] = "OK"; } elseif ($_SESSION['judge'] == null || $referrer == null){ $_SESSION['judge'] = "NG"; } // フラグがNGの場合はng.phpにリダイレクト if ($_SESSION['judge'] == "OK"){ }elseif($_SESSION['judge'] == "NG"){ header("Location:https://hoge-ec.com/ng.php") ; exit ; } |
aoki.u |
投稿日時: 2017/3/10 17:33
対応状況: −−−
|
常連 登録日: 2017/2/19 居住地: 投稿: 53 |
Re: セッションの引き継ぎができない https://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=flat&topic_id=18707&forum=11
上のページでYuya,uさんが書かれているものとほぼ同じ内容での再掲ですが、試されましたか?
$referrerの値をvar_dumpなどで確認してみてくださいね。 この方法ならコントローラやフックポイント等の設定は必要ないと思いますよ。
|
bysk |
投稿日時: 2017/3/10 23:07
対応状況: −−−
|
半人前 登録日: 2016/5/26 居住地: 投稿: 22 |
Re: セッションの引き継ぎができない aoki.u様
ご回答ありがとうございます。 同じ記述にしてもダメなようです... var_dumpで$referrerの値と$_SESSION['judge'] がOKなのを確認してもTOPから別ページに遷移するとng.phpにリダイレクトしてしまい、TOPページ以外アクセスできない状況です.. リダイレクトされてng.phpで$_SESSION['judge']を確認すると"OK"になっております。 なぜ、$_SESSION['judge']がOKなのにリダイレクトされるのか謎で困っております。 何卒宜しくお願い致します! |
468 |
投稿日時: 2017/3/11 23:03
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: セッションの引き継ぎができない トップページとその他のページで、http://とhttps://のページが混在しているという事は無いでしょうか?
|
bysk |
投稿日時: 2017/3/15 22:39
対応状況: −−−
|
半人前 登録日: 2016/5/26 居住地: 投稿: 22 |
Re: セッションの引き継ぎができない 468様
ご回答ありがとうございます。 確認しましたが全てhttpsで共通となっておりました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |