2015-02-23 3 views
0

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

help me to do it 
+0

Извините, вы не можете заставить пользователя войти в приватный режим просмотра. Лучше вы создадите две разные данные сеанса для администратора и пользователя. например $ _SESSION ['user'] и $ _SESSION ['admin'] –

+0

Почему downvote? Конечно, английский не самый лучший, но сам вопрос хороший, я думаю ... –

ответ

0

Вы не можете сделай это. Его зависимость от пользователя будет либо открыта в частном браузере, либо в браузере по умолчанию. Вы не можете изменить поведение браузера. Тем более, что не все браузеры даже обладают такой особенностью!

0

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

За то, что вы хотите сделать ...

// have a session which specifies the type of user. 
$_SESSION["utype"] = "admin" // or user 

и использовать это, чтобы отобразить содержимое соответствующим образом.

0

Вы не можете заставить ссылку открываться в режиме приватного просмотра в любых браузерах, поэтому вам нужно будет отслеживать уникальные сеансы пользователя, используя $_SESSION, как упомянули другие.

Вам также потребуется реализовать уникальную структуру URL в зависимости от текущего пользователя. Gmail реализует эту функцию с помощью следующей структуры URL:.

Число /0/ показано в URL относится к каждому из пользователей, зарегистрированных на Keep в виду, что это число не a UserID или любая потенциально чувствительная информация, а просто индекс для ссылки на значение в s ession.

За кулисами, простой пример $_SESSION будет выглядеть следующим образом:

$_SESSION['authenticated_users'] = [  
    0 => [ 
     'user_id' => 123, 
     'username' => 'John', 
     'user_role' => 'admin', 
    ], 
    1 => [ 
     'user_id' => 456, 
     'username' => 'Jill', 
     'user_role' => 'customer', 
    ], 
    2 => [ 
     'user_id' => 789, 
     'username' => 'Mark', 
     'user_role' => 'customer', 
    ], 
]; 

Вам нужно будет организовать свой код таким образом, что подтверждено текущего пользователя между URL запрошенной и проверку подлинности пользователей в $_SESSION.

В ситуациях, когда только один пользователь регистрировался на веб-сайте (например, клиенты), вам не нужно будет показывать часть /0/ в URL-адресе.

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