Risultati da 1 a 6 di 6

Discussione: problemino con serialize/unserialize

  1. #1
    L'avatar di borgo italia
    borgo italia è offline Super Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    11,232

    problemino con serialize/unserialize

    ciao
    piccolo problemino con serialize/unserialize
    Codice PHP:
    <?php
    if(isset($_GET['mando'])){
    var_dump($_GET['mando']);
    $dati=unserialize($_GET['mando']);
    var_dump($dati);
    }
    $dato['la']=44.059959;
    $dato['lo']=44.059959;
    $dato['zo']=10;
    $dato['la_m']=44.038129;
    $dato['lo_m']=11.8373387;
    $dato['ti']="un bel titolo";
    $inviare=serialize($dato);
    var_dump($inviare);
    echo 
    "<a href=\"?mando=$inviare\">invia</a>";
    ?>
    questo è l'uot del var_dump prima dell'invio
    string(301) "a:6:{s:2:"la";d:44.059958999999999207375367404893 04065704345703125;s:2:"lo";d:44.059958999999999207 37536740489304065704345703125;s:2:"zo";i:10;s:4:"l a_m";d:44.0381289999999978590494720265269279479980 46875;s:4:"lo_m";d:11.8373387000000001023636286845 43073177337646484375;s:2:"ti";s:13:"un bel titolo";}"
    e questo è l'uot dei due vardump dopo
    string(9) "a:6:{s:2:"
    bool(false)
    forse perchè la stringa inviata è troppo lunga? o sono i ; dato che si ferma al primo?
    mi scoccerebbe fare una sequenza di
    ?a=xx&b=vv&&c=mm......

  2. #2
    L'avatar di borgo italia
    borgo italia è offline Super Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    11,232
    ciao
    ecco risolto eliminando e ripristinando le ", se può servire a qualcuno

    Codice PHP:
    <?php
    if(isset($_GET['mando'])){
    var_dump($_GET['mando']);echo "<br>";
    $dati=str_replace("|","\"",$_GET['mando']);//ripristino le virgolette
    var_dump($dati);echo "<br>";
    $dati=unserialize($dati);
    var_dump($dati);echo "<hr>";
    }
    $dato['la']=44.059959;
    $dato['lo']=44.059959;
    $dato['zo']=10;
    $dato['la_m']=44.038129;
    $dato['lo_m']=11.8373387;
    $dato['ti']="un bel titolo";
    $inviare=serialize($dato);
    var_dump($inviare);echo "<br>";
    $inviare=str_replace("\"","|",$inviare);//elimino le virgolette
    var_dump($inviare);echo "<br>";
    echo 
    "<a href=\"?mando=$inviare\">invia</a>";
    ?>

  3. #3
    L'avatar di Fabrizio Fiorita
    Fabrizio Fiorita è offline Utente del Forum
    Data Registrazione
    Sep 2012
    Località
    Roma, Civitavecchia, Anzio
    Messaggi
    43
    Carissimo borgo,
    per la serie "i problemi non finiscono mai"...
    ho letto la tua soluzione e la proverò, sperando che funzioni anche con POST e non solo con GET.
    Però non capisco perché, per poter utilizzare un elemento costruito da PHP, sia necessario trasformarlo.
    L'oggetto ha un formato creato da PHP; serialize() converte l'oggetto PHP in stringa PHP; unserialize() converte la stringa PHP in oggetto PHP. Perché poi, racchiudendo la stringa fra doppie virgolette, commette un errore da neofiti? Anche se capita a tutti di non alternare ' e " specie quando si fa echo di frasi HTML, la coppia serialize() e unserialize() è stata introdotta con PHP 4.2 ed io, che oggi uso PHP 5.4, perché ancora mi devo preoccupare delle virgolette?

  4. #4
    L'avatar di Fabrizio Fiorita
    Fabrizio Fiorita è offline Utente del Forum
    Data Registrazione
    Sep 2012
    Località
    Roma, Civitavecchia, Anzio
    Messaggi
    43
    Provata la soluzione "borgo", funziona anche con POST.
    Ancora grazie, cosa farei senza di te?

  5. #5
    L'avatar di borgo italia
    borgo italia è offline Super Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    11,232
    ciao
    ...cosa farei senza di te?
    cosa è, una dichiarazione? non saresti proprio il mio tipo...

  6. #6
    L'avatar di Fabrizio Fiorita
    Fabrizio Fiorita è offline Utente del Forum
    Data Registrazione
    Sep 2012
    Località
    Roma, Civitavecchia, Anzio
    Messaggi
    43
    E' solo una dichiarazione di sudditanza tecnica. Sai, io sono un ... diverso: a me piacciono le donne

Tag per Questa Discussione

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •