У меня есть приложение, которое я построил в php 7 с платформой воспламенителя кода, и моя проблема с данными сеанса, хранение и получение данных сеанса работает нормально, но иногда, когда два человека входят в систему через короткие интервалы, данные сеанса для первого пользователя также извлекается для второго пользователя, который просматривал сайт, увидел здесь нечто подобное ( неверные данные в сеансе PHP ), что говорит о том, что это может быть проблема с кэшированием (мой сайт использует nginx для кэширования ), но никаких конкретных решений не предлагалось. Любые предложения или идеи будут оценены.
Редактировать: Вот раздел моей библиотеки для авторизации
public function login_account($email,$password)
{
$db = "db";
$data = array("login_mail" => sha1($email));
$query_result = $this->CI->m_eauth->get_login_password($data,$db);
$hash_password ="";
foreach($query_result->result_array() as $value)
{
$hash_password = $value['hash_password'];
$site_name = $value['hash_name'];
$account_type = $value['account_type'];
$site_match_id = $value['site_match_id'];
$site_levels = $value['levels'];
$site_roles = $value['roles'];
}
if(password_verify($password, $hash_password)){
// Success!
$session_data = array(
"site_id"=>$site_match_id,
"site_email"=>$email,
"site_name"=>$site_name,
"site_avatar"=>md5($email).".jpg",
"site_type"=>$account_type,
"site_levels"=>$site_levels,
"site_roles"=>$site_roles
);
$this->CI->session->set_userdata($session_data);
return "successful";
}
else{
// Invalid credentials
return "unsuccessful";
}
}
Позвольте мне добавить, что логин работает нормально, а отдельные сессии работают просто отлично. Но время от времени возникает проблема, которую я описал, и я немного сбиваю с толку, потому что не знаю, где искать.