Visualizzazione dei risultati da 1 a 3 su 3

Discussione: problema eval in php

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    2

    problema eval in php

    Ho un problema nell'uso della funzione eval per eseguire del codice php contenuto in una stringa.
    io su db ho questo testo:
    testo \" . citazione (\"ciao\") . \" testo
    (esattamente come lo ho scritto, con le \).
    Dove la funzione citazione è una mia funzione che mi formatta il testo in una maniera particolare.
    Per far in modo che venga eseguita io utilizzo:

    Codice PHP:
    $d $riga['descrizione'];  
    @eval (
    "\$d = \"$d\";"); 
    eval (
    "echo \"$d\";"); 
    (dove $riga['descrizione'] è presa dal db con una query)

    E fin qui tutto bene la citazione() si esegue e il testo "ciao" si formatta come voglio io, ma se provo a cambiare la mia stringa ad esempio in:
    <div class="normal">testo \" . citazione (\"ciao\") . \" testo</div>
    oppure in
    <div class=\"normal\">testo \" . citazione (\"ciao\") . \" testo</div>
    ottengo sempre l'errore:
    Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /xxx/xxx.php(105) : eval()'d code on line 1

    mi sapete aiutare?

  2. #2
    Studiati questo codice:

    <?php

    function citazione($string) {
    return strtoupper($string);
    }

    $d = "testo \" . citazione (\"ciao\") . \" testo";
    eval ("\$d = \"$d\";");
    var_dump($d);

    $d = "<div class=\\\"normal\\\">testo \" . citazione (\"ciao\") . \" testo</div>";
    eval ("\$d = \"$d\";");
    var_dump($d);


    $d = "<div class='normal'>testo \" . citazione (\"ciao\") . \" testo</div>";
    eval ("\$d = \"$d\";");
    var_dump($d);

    ?>

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    2
    ti ringrazio, infatti alla fine ero riuscito proprio a risolvere cosi..mettendo tonnellate di \\\"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.