Форум программистов, компьютерный форум, киберфорум
Наши страницы

PHP для начинающих

Войти
Регистрация
Восстановить пароль
 
новый вася
1 / 1 / 0
Регистрация: 22.01.2015
Сообщений: 40
#1

Аналог хранения сессий - PHP

04.07.2016, 18:42. Просмотров 240. Ответов 14
Метки нет (Все метки)

вообщем в двух словах
можно ли с $_SESSION делать что-то вроде бекапа, например хранить в БД mySQL какие-то контрольные точки ее работы
или же существует некий метод аля ШАГ НАЗАД, что впринципе походу глупо предполагать поскольку сессия выглядит из серии:

valueone|i:1;valuetwo|i:2;valuethree|i:3;valuefour|i:4;apple|i:0;appleone|i:1;appletwo|i:2;blablavla|i:5;

если код был
PHP
1
2
3
4
5
6
7
8
9
$_SESSION['valueone'] = 1;
$_SESSION['valuetwo'] = 2;
$_SESSION['valuethree'] = 3;
$_SESSION['valuefour'] = 4;
$_SESSION['apple'] = 0;
$_SESSION['appleone'] = 1;
$_SESSION['appletwo'] = 2;
$_SESSION['blablavla'] = 5;
и много много много значений которые меняются  в моем случае по нажатию на кнопки
просто если например сохранить значение сессии в бекап файле каждые пару кликов чтобы можно было вернуться назад обратившись к нему
или же после каждого клика сохранять сессию в БД и при клике на кнопку НАЗАД возвращаться якобы в истории сессии назад прогрузив из бд старый вариант, который был например три-четыре клика назад
вообщем кто что посоветует?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2016, 18:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Аналог хранения сессий (PHP):

Безопасность сессий - PHP
Если в сессии хранить имя пользователя, ничего же страшного? Это не логин и не емайл.

Путь сессий - PHP
Здравствуйте уважаемые! Подскажите пожалуйста, если в php функция которая определяет откуда идет сессия? Просто у меня много php...

Безопасность сессий - PHP
Здравствуйте, Знаю что нужно проверять данные которые могут прийти от пользователя. Например нужно проверять данные куки...

Сохранение сессий в базе - PHP
Как сохранять сессии в базе MySQL? Хочу создать сессию, которая будет считать количество гостей, вот только результат хочу хранить в базе,...

Срок сессий в PHP - PHP
Интересно, что происходит с сессиями после того, как пользователь не заходил долго на сайт. Серваку-то не поступает информация о том, что...

Правильное использование сессий - PHP
Добрый вечер. Почитал в интернете статью о том, что сессия записывается в файл. Причём запись ведётся в последовательном режиме. У...

14
полудух
154 / 138 / 29
Регистрация: 15.03.2016
Сообщений: 782
04.07.2016, 18:52 #2
можно сохранять в другой ID
0
новый вася
1 / 1 / 0
Регистрация: 22.01.2015
Сообщений: 40
04.07.2016, 19:20  [ТС] #3
ммм
а хоть какой нить сыроватый пример сего мероприятия можно узреть в коде?
0
crautcher
2008 / 1979 / 172
Регистрация: 27.05.2011
Сообщений: 6,820
04.07.2016, 19:23 #4
Цитата Сообщение от новый вася Посмотреть сообщение
просто если например сохранить значение сессии в бекап файле
Почему не в сесссии?
PHP
1
2
3
4
5
6
7
8
9
$_SESSION['valueone'] = 1;
$_SESSION['valuetwo'] = 2;
$_SESSION['valuethree'] = 3;
$_SESSION['valuefour'] = 4;
$_SESSION['apple'] = 0;
$_SESSION['appleone'] = 1;
$_SESSION['appletwo'] = 2;
$_SESSION['blablavla'] = 5;
$_SESSION['backup'] = json_encode($_SESSION);
1
полудух
154 / 138 / 29
Регистрация: 15.03.2016
Сообщений: 782
04.07.2016, 19:25 #5
Цитата Сообщение от новый вася Посмотреть сообщение
ммм
а хоть какой нить сыроватый пример сего мероприятия можно узреть в коде?
если так хочется хранить в сессии, то json_encode() массив данных и сохранять строку в $_SESSION{'id1'} 'id2' итд
0
pav1uxa
1846 / 1698 / 644
Регистрация: 23.01.2014
Сообщений: 6,078
Завершенные тесты: 1
04.07.2016, 19:31 #6
Json предназначен немного для другого и не сохраняет типы переменных. Для таких вещей используют сериализацию - serialize() и unserialize().
0
полудух
154 / 138 / 29
Регистрация: 15.03.2016
Сообщений: 782
04.07.2016, 19:32 #7
у него цифры
serialize не понравился, он косой
0
pav1uxa
1846 / 1698 / 644
Регистрация: 23.01.2014
Сообщений: 6,078
Завершенные тесты: 1
04.07.2016, 19:35 #8
Цитата Сообщение от полудух Посмотреть сообщение
у него цифры
Это он просто пример привел...
Цитата Сообщение от полудух Посмотреть сообщение
он косой
Нет.
0
полудух
154 / 138 / 29
Регистрация: 15.03.2016
Сообщений: 782
04.07.2016, 19:37 #9
Цитата Сообщение от pav1uxa Посмотреть сообщение
Это он просто пример привел...
даже если и так, часто можно по ключам понять, что за данные
serialize это крайний случай
Цитата Сообщение от pav1uxa Посмотреть сообщение
Нет.
да.
0
pav1uxa
1846 / 1698 / 644
Регистрация: 23.01.2014
Сообщений: 6,078
Завершенные тесты: 1
04.07.2016, 19:39 #10
Цитата Сообщение от полудух Посмотреть сообщение
даже если и так, часто можно по ключам понять, что за данные
Зачем выполнять лишнюю работу?
Цитата Сообщение от полудух Посмотреть сообщение
serialize это крайний случай
Чего тут крайнего? Нет ничего проще. На выходе получаешь ровно то что сериализовал.

Не по теме:

Цитата Сообщение от полудух Посмотреть сообщение
да.
хватит писать чушь...

0
полудух
154 / 138 / 29
Регистрация: 15.03.2016
Сообщений: 782
04.07.2016, 19:45 #11
Цитата Сообщение от pav1uxa Посмотреть сообщение
Зачем выполнять лишнюю работу?
какую ещё работу?
если у вас в key1 цифры, вы просто юзаете на них <>=
Цитата Сообщение от pav1uxa Посмотреть сообщение
Чего тут крайнего? Нет ничего проще. На выходе получаешь ровно то что сериализовал.
это до того, как в БД или редис эту строку положил
оттуда начинаются сложности
например json все спец.символы и utf закодирует, а serialize - нет
0
crautcher
2008 / 1979 / 172
Регистрация: 27.05.2011
Сообщений: 6,820
04.07.2016, 19:51 #12
Цитата Сообщение от pav1uxa Посмотреть сообщение
и не сохраняет типы переменных
И... что? Инт останется интом, строка строкой, буль булем. Если там не будет объектов, то на вкус программиста. По работоспособности один черт.
0
новый вася
1 / 1 / 0
Регистрация: 22.01.2015
Сообщений: 40
04.07.2016, 20:26  [ТС] #13
PHP
1
2
3
4
5
6
session_start();
if (!isset($_SESSION['backup'])) {$_SESSION['backup'] = json_encode($_SESSION);}
echo $_SESSION['backup'];
 
$_SESSION= json_decode($_SESSION['backup']);
echo $_SESSION['value'];
чет не пойму какой синтаксис иcпользования
выводит

Cannot use object of type stdClass as array in C:\wamp\www\2.php on line 6
0
pav1uxa
1846 / 1698 / 644
Регистрация: 23.01.2014
Сообщений: 6,078
Завершенные тесты: 1
04.07.2016, 20:31 #14
Цитата Сообщение от новый вася Посмотреть сообщение
json_decode($_SESSION['backup']);
заменить на
PHP
1
json_decode($_SESSION['backup'], true);
ИЛИ

Цитата Сообщение от новый вася Посмотреть сообщение
echo $_SESSION['value'];
заменить на
PHP
1
$_SESSION->value;
1
новый вася
1 / 1 / 0
Регистрация: 22.01.2015
Сообщений: 40
04.07.2016, 20:33  [ТС] #15
большое спасибо все работает =)
0
04.07.2016, 20:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.07.2016, 20:33
Привет! Вот еще темы с ответами:

Работа сессий в php - PHP
Доброго времени суток! Учусь использовать сессии. Сначала открываю её: session_start(); потом кладу туда нужные мне переменные, потом...

Ошибка регистрации сессий - PHP
в чем здесь ошибка: &lt;?php session_start(); if (isset($_POST)) { $login = $_POST; } if (isset($_POST)) { $password = $_POST; }...

Запрет параллельных сессий - PHP
Есть идея сделать запрет параллельных сессий, как это можно реализовать? Хотя бы на теории

Не создаются файлы сессий - PHP
Доброго времени суток. Начал я недавно щупать php и застрял на теме сессий. Есть такой код: &lt;?php // auth.php $un = &quot;jsmith&quot;; $pw...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru