Visualizzazione dei risultati da 1 a 10 su 10

Discussione: stampare tag php

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505

    stampare tag php

    salve. stò facendo del caching nel mio sito internet, e avrei bisogno di creare a sua volta dei file in php. unico problema è che non sò come si faccia a "stampare" dei caratteri php (che andranno nel buffer) senza che questi vengano interpretati dal web server.

    ho provato con htmlentities(), ma è appunto per html, a me servirebbe per php! sicuramente esiste una funzione di cui non conosco l'esistenza.

    illuminatemi

    cordiali saluti

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505
    sul serio, nessuna ha idea?

    io ho scritto così :
    codice:
    ob_start();
    
    // file configurazione db e variabili di status generali
    ?>
            $db_host="<?=$_POST['host_v']?>";
            $db_user="<?=$_POST['user_v']?>";  
            $db_password="<?=$_POST['pass_v']?>";
            $db_name="<?=$_POST['namedb_v']?>";
        
            $mydb=mysql_connect($db_host, $db_user, $db_password);
            if ($mydb==FALSE) die ("Database connection problems. Check the configuration");
            mysql_select_db($db_name, $mydb) or die("Database connection problems. Check the configuration");
            
            $nick_session=$_SESSION["<?=$_POST['sessionuser_v']?>"];
    <?
    
    
    // creazione dei file di cache
    $cachefile="../cache/file.php";
    $fp=fopen($cachefile, 'w'); 
    fwrite($fp, ob_get_contents()); 
    fclose($fp); 
    
    // cancello e chiudo il buffer. lo script php non viene visualizzato
    ob_end_clean();
    su file.php mi stampa tutto correttamente, solo che non include i marcatori <? ?>... sicuramente c'è una funzione che stampa senza interpretare tutto quello che viene scritto dentro quella funzione

  3. #3
    Non ho capito bene cosa devi fare. Se quello e' codice PHP che deve rimanere tale, allora non devi mettere i tag PHP all'interno di codice PHP. Se invece i valori di $_POST devono essere valutati PRIMA di scrivere l'output allora non ho capito il problema.

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505
    io devo stampare su un file .php del codice php senza che questa venga "interpretato". nel mio esempio, le variabili $_POST['host_v'], $_POST['admin_v'] ecc devono essere interpretate in quanto contengono dei valori. il resto deve essere visto come del codice php da non interpretare, in modo che venga "scritto" sul file .php.

    quindi, una volta aperto il file .php, io devo avere del codice php che verrà "interpretato" successivamente. (faccio la cache di un file .php sostanzialmente, invece che html, e voglio evitare che venga evitata l'interpretazione mentre questo codice viene scritto su file).

    più chiaro?

  5. #5
    Allora forse il problema sono gli short open tags? Usa <?php invece di <?=

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505
    eh ma è questo il problema. se scrivo <? (o <?php) nel momento che il server elabora quel tag, lo interpreta come codice php...io invece voglio che lo interpreti come dei caratteri normali, in modo che anche <? e ?> possano venire scritti sul file .php

  7. #7
    Continuo a non capire il senso di avere tag PHP dentro il codice PHP. Posta un esempio dell'output come dovrebbe essere.

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505


    L'output dovrebbe essere questo codice nel file php config.db.php :
    codice:
    <?    
        $db_host="localhost";
        $db_user="myusername";  
        $db_password="mypassword";
        $db_name="mydbname";
    
        $mydb=mysql_connect($db_host, $db_user, $db_password);
        if ($mydb==FALSE) die ("Database connection problems. Check the configuration");
        mysql_select_db($db_name, $mydb) or die("Database connection problems. Check the configuration");
    ?>
    sostanzialmente, mi crea un file php che si connette a un database (secondo le specifiche fornite dall'utente). in realtà stampa tutto quel codice, eccetto <? e ?>, quindi quando faccio un include di questo file da un altra pagina php non me lo prende come codice php, ma come html semplice

  9. #9
    Ma un banalissimo:
    codice:
    fwrite($fp, "<?php\n".ob_get_contents()."\n?>");
    ?

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    505


    che idiot, effettivamente non ci avevo pensato

    si comunque ero alla ricerca di una funzione, ma giustamente posso risolvere così! grazie mille

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.