Проблема с unserialize

PHProgress

Новичок
Столкнулся с проблемой и не могу понять в чем ошибка.
Из БД извлекаю данные.

Из них создаю данные в скрипте через serialize.
Получается строчка:
a:2:{s:3:\"id\";s:2:\"77\";s:7:\"deleted\";s:1:\"0\";}

Но в этом же скрипте потом их не могу расшифровать.через unserialize
Он ни выдает ни ошибок, только пустоту...

В чем могу быть не прав?
 

PHProgress

Новичок
a:2:{s:3:\"id\";s:2:\"77\";s:7:\"deleted\";s:1:\"0\";}
Хотя эта строчка без проблем расшифровывается вдругом любом скрипте...
Да и любой ее может расшифровать...

Это может быть из-за проблемы с кодировкой?

И вот два вариант
$ar = unserialize('a:2:{s:3:\"pid\";s:2:\"77\";s:7:\"deleted\";s:1:\"0\";}'); - это не работает
$ar = unserialize("a:2:{s:3:\"pid\";s:2:\"77\";s:7:\"deleted\";s:1:\"0\";}"); - это работает


А в чем раздница?
 

PHProgress

Новичок
$ar1 = STRLEN('a:2:{s:3:\"pid\";s:2:\"77\";s:7:\"deleted\";s:1:\"0\";}');
$ar2 = STRLEN("a:2:{s:3:\"pid\";s:2:\"77\";s:7:\"deleted\";s:1:\"0\";}");

И так разное количество символов.
 

PHProgress

Новичок
Да и перед этим эту строку я вырезаю из большой строки через - preg_match_all
 

PHProgress

Новичок
выключить к чертям magic_quotes
Очень бы ло бы удобно - но не подходит...
Может быть что-то другое может подойти...

Мне нужно просто из небольшого массива сделать строку - без переносов.
Эту строку я пишу в input type text
И потом ее разобрать...

magic_quotes - не могу себе позволить...
 

fixxxer

К.О.
Партнер клуба
Это еще почему не подходит? А ты в курсе, что в новых версиях php этой настройки вообще нет?
 

WMix

герр M:)ller
Партнер клуба
Мне нужно просто из небольшого массива сделать строку - без переносов.
Эту строку я пишу в input type text
И потом ее разобрать...
PHProgress
Код:
<input type="text" value "\"hello\"">
да с таким гемороем даже magic_quotes не помогут

оберни еще в base64 получиться анекдот

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

PHProgress

Новичок
наверное самый лучший вариант - написать свою функцию...
и в ней испльзовать for а не foreach - ведь с for - Быстрее будет работать...
 

WMix

герр M:)ller
Партнер клуба
наверное нужно задачу понять не как ты ее решить хочешь а как она звучит!
 

PHProgress

Новичок
Мне нужно просто из небольшого массива сделать строку - без переносов.
Эту строку я пишу в input type text
Остановился на print_r - а там где нужно использую регулярные выражения...
 

WMix

герр M:)ller
Партнер клуба
это только часть решения.... вопрос задачи!
 

PHProgress

Новичок
Суть задачи - собрать разрешенные действия пользователя в виде строки...
А потом в определенном месте - что бы была возможность проверить права доступа.
 

PHProgress

Новичок
print_r - подошел

но насколько корректно такая запись с переводом строк в value text?

PHP:
<input type="text" value="привет ривет, а здесь я уже на следующей строке

и здесь еще одна строка


и здесь">
textarea - просто не совсем подходит...
 

fixxxer

К.О.
Партнер клуба
Magic quotes выключить ему "не подходит", textarea для многострочного текста "не подходит"...

Может, начать пытаться разобраться в том, что делаешь, а не искать что-то, что "подойдет" методом тыка?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Права доступа хранить в одном поле? Ну да, про реляционную модель никто сейчас не знает...
 
  • Like
Реакции: WMix

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Redjik
Куда как проще имхо взять БД и типичную для многих приложений структуру юзер-роль-права, или даже просто юзер-права. Зачем там что-то сериализовать?
 
Сверху