Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Problema con eval()

  1. #1

    Problema con eval()

    Ciao a tutti,

    ho un problema piuttosto serio con la funzione eval. Io voglio eseguire il codice PHP contenuto nella variabile $riga1["codice"] e quindi ho scritto questa porzione di codice:

    Codice PHP:
    eval('\$riga1["codice"]; = \'$riga1["codice"];\';');
    print (
    $riga1["codice"]); 
    però mi genera questo errore:

    Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/multisport cms/index.php(87) : eval()'d code on line 1

    Parse error: syntax error, unexpected '=' in /var/www/multisport cms/index.php(87) : eval()'d code on line 1
    Dov'è l'errore?
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  2. #2
    Posta il codice SENZA usare il tag [PHP] e, intanto, controlla i ;

  3. #3
    ecco il codice php. Ho provato a modificarlo per renderlo più simile all'esempio del manuale PHP

    $code = $riga1["codice"];
    eval('\$code = \'$code\';');
    print($code);

    però non funziona comunque
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  4. #4
    Ti suggerisco di riprendere studiando le basi della sintassi PHP:

    http://www.php.net/manual/en/language.types.string.php

    Codice PHP:
    <?php 
    $riga1
    ["codice"] = '5 + 5';
    $code $riga1["codice"];
    eval(
    "\\$code = $code;");
    print(
    $code);
    ?>

  5. #5
    scusa, è una mancanza mia. Non ho specificato che $riga1["codice"] proviene da un DB MySQL. Ho provato modificando la tua sintassi e non mi funziona. Faccio pubblica ammenda e chiedo perdono!!!!
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  6. #6
    Posta il codice che stai utilizzando (quello che hai "modificato") ed risultato di questo codice:

    Codice PHP:
    var_dump($riga1["codice"]); 

  7. #7
    questo è il codice criminale:

    <?php
    dbConnect();
    $count1 = 0;
    $res1 = mysql_query( "SELECT * FROM ordinamento WHERE colonna = '2' ORDER BY ordinamento;" );
    while ( $riga1 = mysql_fetch_array( $res1 ) ) {
    print($riga1["codice"]);
    inizio1_post();
    print($riga1["modulo"]);
    inizio2_post();
    var_dump($riga1["codice"]);
    $code = $riga1["codice"];
    eval("\$code = $code;");
    print($code);

    fine_post();
    }dbClose();

    ?>

    mentre il risultato di
    var_dump($riga1["codice"]);
    è
    string(47) " "
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  8. #8
    Che cosa restituisce quest'altro codice?

    Codice PHP:
    print('<pre>');
    print(
    htmlentities($riga1["codice"]));
    print(
    '</pre>'); 

  9. #9
    questo è il risultato:

    <?php require ("./script/hot_news.php"); ?>
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  10. #10
    ...

    Codice PHP:
    eval(' ?' '>' $riga1["codice"] . '<' '?php '); 
    Mi chiedo perchè fare tutta sta fatica per includere un file ...

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.