2013-05-03 1 views
0

Можно ли редактировать данные сеанса пользователя, который вошел в систему?Редактирование данных сеанса пользователя, который вошел в систему

Например. Пользователь norman регистрируется, и следующий cookie для сеанса устанавливается $ _SESSION ['addPost'] = 0

Это означает, что пользователь может добавить сообщения. Допустим, я хочу заблокировать пользователя от добавления сообщений. Мне нужно установить этот файл cookie на 1. Могу ли я изменить значение cookie? Потому что, пока пользователь не выйдет из системы и не войдет в систему снова, он не изменится, и он все равно сможет добавлять сообщения.

Как это можно сделать?

+0

Я настоятельно рекомендую использовать файлы cookie. Было бы очень удобно манипулировать данными из базы данных, чем с предустановленными $ _SESSION. –

+0

Почему бы не сбросить индивидуальный вариант $ _SESSION? – ajtrichards

+0

Вы можете получить доступ только к переменной $ _SESSION в PHP, и в PHP можно получить доступ только с доступом пользователя к странице. –

ответ

0

Не изменяйте переменную сеанса. Для этой цели существует гораздо лучший подход.

Используйте еще одну колонку в users таблице с именем post_access. Если вы разрешите Norman публиковать, его значение будет равно 1, а заблокированный пользователь получит 0.

Предположим, вы заблокировали пользователя от публикации, поэтому вы изменили значение в столбце post_access на 0 в users таблице.

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

Пример:

$userdata = get(1 from "users" where user = "$_SESSION['user']"); //don't mind the get function. Use your own QUERIES. Just mind the logic. 
    $post_access = $userdata['post_access']; 
    if($post_acess == 1){ 
    //post the data 
    }else{ 
    //Bro you are blocked 
    } 

Это было бы наиболее эффективным способом борьбы с должности.

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