2013-09-17 1 views
0

У меня проблема. Я попытался войти в один аккаунт. Затем, открывая еще одну сессию chrome, а не другую вкладку, предыдущий сеанс получает это значение сеанса, и все возвращается к текущему значению учетной записи. Как избежать этой проблемы? Так я и делаю на своей странице входа. Мой сервер - Centos.Сессия Php становится смешанной даже с разным сеансом браузера

  $_SESSION['enterpriseID'] = $row1['enterpriseID']; 
     $_SESSION['userID'] = $row1['userID']; 
     $_SESSION['userName'] = $row1['userName']; 
     $_SESSION['enterpriseName'] = $row1['enterpriseName']; 
     $_SESSION['enterpriseID'] = $row1['enterpriseID']; 
     $_SESSION['enterpriseLogo'] = $row1['enterpriseLogo']; 
     $_SESSION['timeZoneOffset'] = $row1['timeZoneOffset']; 
     $_SESSION['positionID'] = $row1['positionID']; 

Образец кода выглядит следующим образом.

Update tblAST Set 
astStatus='m',". 
employeeIDEnd=".$_SESSION['userID'].", ". 
dateTimeEnd=now() ". 
Where astID=".$astID; 
+0

Использование режима инкогнито? – Paulpro

+0

Но это должен был обряд? Какой бы метод я ни использовал? – user2711681

+0

Как открыть другую сессию? Единственный способ избежать этого - использовать режим инкогнито. –

ответ

2

То, как хром работы является то, что занятия действуют через вне программы, даже если открыть новое окно, оно все еще имеет информацию из всех остальных сеансов. вы можете увидеть это с помощью GMail, каждое окно, в которое вы открываете свой почтовый ящик, будет загружаться, пока вы его переходите,

Как упоминалось выше, попробуйте использовать приватный просмотр или другой браузер, чтобы протестировать несколько сеансов.

Как уже упоминалось в моих комментариях ниже, вам нужно назначить имя для каждой сессии, а затем создать многомерный массив для установки и получения информации.

$ _SESSION [ 'MyApp'] [ 'имя пользователя']
$ _SESSION [ 'MyApp'] [ 'ID']

+0

Проблема в том, что я пробовал IE, тоже самое. Я также видел, что некоторые данные получают идентификатор сеанса для разных клиентов при хранении в базе данных, которая страшно – user2711681

+0

Поскольку все браузеры используют глобальный сеанс, и переменная записывается поверх. попробуйте использовать частный режим или даже сеансы базы данных таким образом, что вы можете сгенерировать ключ для каждого сеанса, i beleive php имеет способ сделать это, когда вы ссылаетесь на сеанс по ключам – Philip

+0

Но почему мой db также показывает смешанную сессию клиента стоимость. Напр. Я вижу, что клиент A имеет значение сеанса клиента B, хранящееся – user2711681

Смежные вопросы