Autor Zpráva
petris
Profil
Nenapadá někoho kde by mohla být tady chyba? Echo správně vypíše serializovaný řetězec... a tím to končí. Unserialize se neprovede.
<? if ($_COOKIE["vinoselectivo"]) { 

echo ($_COOKIE["vinoselectivo"]);
$unsave = unserialize($_COOKIE["vinoselectivo"]);
print_r($unsave);}
?>

Zkoušel jsem všechno možný, ale na unserialize to vždy skončí. Díky za nějaký nápad.
mila
Profil
Zkus error_reporting (E_ALL), místo print_r vardump, zkustit nějaké echo mezi problémovými řádky.
Nic nevidím, ale bude nějaká to blbost. Trochu zkušený programátor, by měl podobné problémy umět odhalit sám...
Hugo
Profil
petris

A je ten řetězec ve správném tvaru?

In case the passed string is not unserializeable, FALSE is returned.
24k
Profil *
nejsou tam ' ?? zkus to prohnat stripslashes()
petris
Profil
mila Zkus error_reporting (E_ALL), místo print_r vardump, zkustit nějaké echo mezi problémovými řádky.
Nic nevidím, ale bude nějaká to blbost. Trochu zkušený programátor, by měl podobné problémy umět odhalit sám...

error_reporting nenašel nic, var_dump dal bool(false) (??), echa ukázaly to co měly. Zkušený programátor nejsu (se serialize/unserialize dělám poprvé) proto se obracím na ty, kteří jsou.

Hugo A je ten řetězec ve správném tvaru?
Asi ano, sice nevím jak to zjistit, ale nevím proč by nebyl.... na první pohled obsahuje všechny zadané hodnoty pole

24k nejsou tam ' ?? zkus to prohnat stripslashes() Nepomohlo.

Zkusil jsem to i na serveru (PHP 4.4.2.), výsledek stejný. Unserialize se prostě neprovede.
I tak díky za snahu.
Retal
Profil
petris
A co vypisuje echo $_COOKIE[...]?
Aesir
Profil
petris:
Pozor na magic quotes, zkuste univerzálně:

$unsave = get_magic_quotes_gpc() ? unserialize($_COOKIE["vinoselectivo"]) : unserialize(stripslashes($_COOKIE["vinoselectivo"]));
petris
Profil
Už jsem na to asi přišel, $_COOKIE["vinoselectivo"] vypíše řetězec, ale v porovnání s původním po serializaci v něm chybí zpětná lomítka. Místo \" jsou tam jenom "
Aesir To je to co jsi myslel?
Aesir
Profil
petris:

Pokus skript stále nefunguje, jak má, bude nejlepší sem vypsat obsah proměnné před serializací, po serializaci a nakonec po unserializaci (tfuj tajxl). A to celé nejlépe pomocí var_dump ( PHP manuál ).
petris
Profil
Aesir: už funguje. Pomohlo tvoje
unserialize(stripslashes($_COOKIE["vinoselectivo"]))
. i když pořád moc nechápu co to znamená. Díky za pomoc.
Aesir
Profil
petris:

Znamená to, že máš v php.ini nastaveno magic_quotes_gpc na on, což způsobí automatické ošetření všech HTTP požadavků (_POST, _GET, _COOKIE) stejným způsobem jako funkcí addslashes - escape sekvencí (v php je to zpětné lomítko). Zrušení tohoto ošetření už však musíš udělat ručně.
24k
Profil *
>> Aesir: už funguje. Pomohlo tvoje



NN 24k byl prvni ;) tomu slozis hold a 2000€ na BÚ :)
WertriK
Profil
24k
Budeš tunit golfa ? :)
24k
Profil *
;-) už tunim, ale momentalně mam na učtě asi 8k a z toho se uz tunit neda :D
Ale uz mam 17tky AKU kola, tmavy folie a super radio ( puv. cena 12 000,-) nyni za 4k ;)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0