У меня есть одна серьезная проблема.unset как-то разрушает все совершенно разные сессии
Существует небольшая система PHP, содержащая панель администратора и панель клиентов. Эти панели должны функционировать независимо друг от друга.
Например - если администратор выходит из системы, клиент должен остаться внутри, и т.д.
Существует мой logout.php скрипт (который вызывается кнопка выхода яваскрипта обработчиком):
<?php
require_once("./setup/additional_functions.php");
require_once("./setup/mysql_settings.php");
session_start();
$functionName = filter_input(INPUT_GET, "functionName");
if($functionName == "logoutAdmin") {
initiateLogout("um_status", "users_managers", "um_id", $_SESSION['admin_id'], "admin");
} else if($functionName == "logoutCustomer") {
initiateLogout("customer_visit", "users_customers", "customer_id", $_SESSION['cust_id'], "../customer");
} else {
echo "Unknown error!";
}
function initiateLogout($loginTime, $tableName, $id, $sessionName, $backPage) {
$sqli = new sqlSettings();
$sql = "SELECT ". $loginTime ." FROM ". $tableName ." WHERE ". $id ." = ". $sessionName;
$result = $sqli->setConnection()->query($sql);
$user = $result->fetch_array();
$timestamp = $user[$loginTime] - 300;
$sql = "UPDATE " .$tableName. " SET " .$loginTime ." = ". $timestamp. " WHERE " .$id ." = ". $sessionName;
$result = $sqli->setConnection()->query($sql);
$_SESSION = array();
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time() - 50000, '/');
}
unset($sessionName);
//redirect_to($backPage);
echo "../" . $backPage;
}
?
>
данных внутри $ _SESSION [ 'admin_id'] и $ _SESSION [ 'customer_id'] - абсолютно разные! Но так или иначе - когда я нажимаю кнопку (например) на стороне администратора - клиент также выходит из системы !!! Это не должно быть так.
Как этого избежать? Будем очень благодарны за любую помощь!
Вы выписываете их оба с помощью $ _SESSION = array(); – MiDri
Я прокомментировал строку с $ _SESSION = array(); , Он ничего не влияет. То же самое повторяется. – tenzor
Ну, может кто-нибудь мне помочь? Мне все еще нужна помощь! – tenzor