преобразование точки в SERIALIZE
Есть такая проблема, поясните что делать..
Имеется строка содержащая точки внутри.
Например: текст1.текст2.текст3
Его я пишу в Куки и мне нужно использовать Serialize, т.к. я туда еще массив пишу.
после преобразования сериалайзом все точки меняются на "_" !!!!
Процедура Unserialize обратно не возвращает точки.
Что делать с этим?
Уточню проблему: текст1.текст2.текст3 собственно являются ключами массива, который я сериализую.
Поэтому использовать urlencode/urldecode не получится.
Предлагаете использовать json?
А для чего вам требуется в куки заталкивать массив?
А если по существу, нет что ли решения глюка?
предлагаю пихать значения не в один кук.
Не может массив содержать в ключах знак "." :o
Сериалайз тут не причем. :rolleyes:
Прошу прощения за потраченное Вами время! :o
Например,у Котерова такое не помню(хотя,естественно,могу ошибаться)
Вообщем дело обстоит так.
Про точку в ключе я ошибся. Можно ее туда втыкать.
То бишь проблема вернулась.
Сначала я думал, что подмена точки на "_" из-за сериалайза.
Перепроверил, оказалось нет.
Тогда я решил, что проблема в ключах массива, которые не понимают точки. Проверил, тоже нет.
Массив злополучный я забираю из $_POST, который заполняется из формы с Селектбоксами.
echo"<input type='checkbox' id=\"".$zn."\" name=\"".$zn."\" ".$checked.">".$name."<br>";
В $zn лежат как раз строки типа "текст1.текст2.текст3". Вот после отправки формы на сервак, я получаю в $_POST = Array{[текст1_текст2_текст3] = On [текст3_текст4_текст5] = On}
А надо получить:
$_POST = Array{[текст1.текст2.текст3] = On [текст3.текст4.текст5] = On}
Сильно не бейте :)
Цитата: Smoke88
Банально хочу запоминать у пользователя выбранные им данные для следующего посещения.
А если по существу, нет что ли решения глюка?
А если по существу, нет что ли решения глюка?
А сессии использовать никак? Зачем впустую ломать себе голову с сериализацией, если с сессиями вообще никакой проблемы быть в принципе не может - ваш массив там сохранится простым копированием
Сессии имеют свойство заканчиваться после закрытия браузера :(
Добавил value=\"".$zn."\" в checkbox и пишу туда эти дурацкие строки с точками.
Читаю значения $_POST - точки не подменились!!!!
Ура товарищи!
Цитата: Smoke88
Сессии имеют свойство заканчиваться после закрытия браузера :(
Имеют свойство, только если вы это свойство им придали. Стоит прочитать маны, где время жизни сессии можно продлить хоть до конца света (правда сборщик мусора не даст этому свершиться, но всё же).
Цитата: Smoke88
Сессии имеют свойство заканчиваться после закрытия браузера :(
Если вы их так организовали, то они закроются конечно...