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

Discussione: includere codice

  1. #1

    includere codice

    ciao

    è possibile includere del codice php salvato in una variabile?

    ad esempio:

    Codice PHP:
    <?

    $codice
    ="echo \"ciao\";";

    include(
    $codice);
    require(
    $codice);

    ?>
    ovviamente ne uno ne l'altro funzionano, perchè cercano di includere unfile, esiste qualche funzione per fare questo?

    ciao e egrazie
    "durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."

    http://www.kumbe.it

  2. #2
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    ...ma quella variabile poi in che file starebbe? Esterna? In questo caso ricadresti nell'inclusione di file...

    O vuoi una funzione più "restrittiva" che includa solo una variabile di un file?

    [.:: JaguarXF ::.]
    __________________

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: includere codice

    Originariamente inviato da nik600
    ciao

    è possibile includere del codice php salvato in una variabile?
    No, la require/include si aspetta comunque un nome di file. Quindi ad esempio:
    codice:
    require 'file.php';
    
    $nomefile = 'file.php';
    require $nomefile;
    Al massimo puoi usare la funzione eval() che valuta una stringa contenente codice PHP.
    codice:
    $codice="echo \"ciao\";";
    
    eval ($codice);
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    sto pensando ad un sistema di cms basato su moduli dove i moduli vengono messi nel database (in un campo text) e poi gli utenti si trovano abilitati o no certi moduli in base ad un profilo del database,

    secondo, te, è possibile salvare una intera classe php in formato testo in un db e poi valutarla con eval riga per riga?

    o quando ci sono cose tipo

    Codice PHP:
    while(condizione){

    //fai qualcosa

    va in casino perchè cerca di eseguire tutto riga per riga?

    ciao e grazie
    "durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."

    http://www.kumbe.it

  5. #5
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    Potresti includere il file (.php, di testo) nel db e poi fare un require od un include...
    Che necessità c'è dell'eval?..

    [.:: JaguarXF ::.]
    __________________

  6. #6
    ah, intendi in formato binario?

    cazzo è vero!

    come con le immagini!

    quindi poi io faccio

    require(getfile.php?id_file=12);

    una cosa del genere?
    "durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."

    http://www.kumbe.it

  7. #7
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    In formato binario o meno non importa, ma, sì, intendevo questo.
    Su MySQL salvi il file di testo in un campo BLOB e poi lo estrai esattamente come faresti con tutti gli altri tipi di campi.

    Al limite, se ti si presentassero problemi, crei prima un file temporaneo .php in cui inserisci ciò che hai estratto dal db e includi quest'ultimo.


    [.:: JaguarXF ::.]
    __________________

  8. #8
    ciao

    purtroppo non va

    Codice PHP:
    <?
        
    include("../software/files/get_file.php?id_file=7");
    ?>
    codice:
    Warning: main(../software/files/get_file.php?id_file=7): 
    failed to open stream: No such file or directory in /mnt/win/Inetpub/wwwroot/prove_php/inclusioni.php on line 2
    
    Warning: main(): Failed opening '../software/files/get_file.php?id_file=7' for inclusion (include_path='.:/usr/local/lib/php')
     in /mnt/win/Inetpub/wwwroot/prove_php/inclusioni.php on line 2
    i parametri in get gli danno casino...
    la soluzione dei file temporanei non mi piace molto... dici che non ci sia nulla da fare?
    "durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."

    http://www.kumbe.it

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    434

    Codice PHP:
    //$moduli["nomemodulo"] = 1/2 - 1 = admin 2 = altro livello;
    $moduli["utenti"] = 1;
    $moduli["pagina_principale"] = 2;
    $moduli["opzioni_personali"] = 2;
    $moduli["opzioni_sito"] = 1;
    $moduli["gestione contenuti"] = 2;
    //ecc...poi metti:
    if(!isset($moduli[$_GET['modulo']])) {
      die(
    "questo non è un modulo valido!");
    }
    if(
    $livello_di_accesso == "amministratore") {
      require(
    $_GET['modulo'].".php");
    }elseif(
    $livello_di_accesso == "moderatore" && $moduli[$_GET['modulo']] == 2) {
      require(
    $_GET['modulo'].".php");
    }else{
      die(
    "Non hai l'accesso al modulo");


    edit: dimenticavo di dirti, i moduli saranno nomemodulo.php e dovrai redirezionare gli utenti ad una pagina includi_moduli.php?modulo=nomemodulo in cui ci metti il codice di sopra

  10. #10
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    @nik600:

    includere in quel modo mi fa rabbrividire...

    Salva come file temporaneo il contenuto del tuo db e caricalo in modo "umano", col solito include.

    Se hai paura di intasare il server coi file temporanei poi lo puoi cancellare. No?


    [.:: JaguarXF ::.]
    __________________

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.