2017-07-22 14 views
3

私はcodeigniterで動作するeコマースウェブサイトを持っています。セッションは通常のケースで正常に動作しています。この問題は、たとえば、2人のユーザーが自分のWebサイトにログインしていると想定し、カートに追加したり、チェックアウトに進むなどのアクションをクリックしたり、ログインセッションがスワップされると同時に注文すると。codeigniter同時に複数のリクエストを交換する

誰でもこの手伝いをしてください。私はこれで多くを検索しましたが、良い解決策を見つけることができませんでした。

は私が勝ったこの

$config['sess_driver'] = 'files'; 
$config['sess_cookie_name'] = 'ci_session'; 
$config['sess_expiration'] = 7200; 
$config['sess_encrypt_cookie'] = TRUE; 
$config['sess_save_path'] = sys_get_temp_dir(); 
$config['sess_match_ip'] = TRUE; 
$config['sess_time_to_update'] = 300; 
$config['sess_regenerate_destroy'] = FALSE; 

のような設定ファイルを使用しています。それは、私は信じている私のウェブサイトのパフォーマンスに影響しますので、tはデータベースとしてsess_driverを使用することができます。

ありがとうございます。

+0

これらの2人のユーザーは、異なるIPなどの異なるコンピュータから接続しているのですか、同じブラウザで2人のユーザーとふりをしていますか? – TimBrownlaw

+0

はい..異なるIPの異なるコンピュータから接続している「2人のユーザー」..基本的に、これは「2人の」ユーザーが同時にサーバーにヒットすると発生します。 – Feroz

+0

セッションが設定されているコードを表示します。 ( ' および値 '$のsess_dataように割り当てられている=配列; – Tpojka

答えて

0

ユーザーがログインしているということは、ユーザーがシステムにログインするための[ログイン]ボタンがあることを意味します。だからあなたのログイン機能が言及されているコントローラは、あなたは、コンストラクタを作成することができ、以下のように、そこにあなたのセッションライブラリをロード:

public function __construct() 
{ 
    $this->load->library('session'); 
} 

をそして「ログアウト」ボタンは、あなたのシステム、セッションでもそこであることを確認してください'Logout'ボタンをクリックすると破壊することができます。 これを試すことができます。ちょうどこれが助けになると思った

関連する問題