Я строю плагин WordPress для многопользовательского родительского портала. Родители входят в систему и редактируют формы для своих детей. Недавно.
Это происходит даже когда:
[*] Пользователи вводятся отдельно, а не повторно используют браузеры
[*] У каждого из них разные учетные данные
. /> < /ul>
подозреваемая основная причина < /strong>
Мы храним активное идентификатор ребенка в переменной сеанса, как это: < /p>
Код: Выделить всё
$_SESSION['current_child_id'] = $user->{"Serial no."};
< /code>
и используйте его, чтобы определить, какое имя ученика отобразить: < /p>
$child_id = $_SESSION['current_child_id'];
$child = $wpdb->get_row("SELECT * FROM gsp25 WHERE `Serial no.` = '$child_id'");
echo "Currently managing: " . $child->{"Name of student"};
Что мы попробовали < /strong> < /p>
Использование session_start () без session_name () (просто по умолчанию phpsessid) < /li>
. Один идентификатор ребенка один раз на входе в систему < /li>
Журнал To Debug.log показывает, что у каждого пользователя есть различный session_id () < /li>
< /ul>
Что нам нужна помощь с < /strong> < /p>
Что еще может привести к перекрестному $ _session variable? WordPress, плагин или неправильная конфигурация на стороне сервера (например, общий
Session Storage) приводят это? касается $ _session: < /p>
if (!session_id()) session_start();
< /code>
Мы больше не используем session_name (). Мы полностью полагаемся на cookie phpsessid от PHP по умолчанию.$_SESSION['parent_logged_in'] = true;
$_SESSION['parent_email'] = $parent_email;
$_SESSION['current_child_id'] = $user->{"Serial no."};
< /code>
Настройка сервера:
Я мало что знаю об этом, кроме того, что это пользовательский плагин на веб -сайте, размещенном на WordPress.com, используя таблицы из базы данных WP.
Мы подтвердили, что каждый пользователь получает уникальный Session_id () через Session_id () < /p>
.>
Подробнее здесь: https://stackoverflow.com/questions/795 ... n-my-custo