Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    234

    fwrite() copy() e include()

    Se provo a copiare una pagina tramite copy oppure a ricrearla con fwrite tutto funziona tranne gli include() del codice php, ho pensato a un problema di permessi, ma anche cambiandoli (sempre da script) non funzionano lo stesso.
    Se semplicemente tiro fuori la pagina tramite ftp e la ricarico tutto funziona. Come potrei ovviare a questo problema? Vorrei che creando una pagina php sul server tramite codice anche gli include() funzionassero.

    grazie - ciao

  2. #2
    Abilita la visualizzazione di tutti gli errori prima di eseguire un include che non funziona e posta i messaggi restituiti da PHP.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    234
    nessun errore, semplicemente non legge gli include. La pagina va perfettamente. Se però la copio da script con un altro nome la stessa pagina non legge più gli include, se la scarico tramite ftp e la ricarico (senza modificarla) allora funziona. Ho provato a cambiare i permessi ma non va, è come se una pagina creata con copy non va e la stessa caricata via ftp va.

    Grazie - ciao

  4. #4
    Mi sembra molto difficile che il PHP non restituisca alcun messaggio se l'include non va a buon fine.
    Come hai impostato l'error reporting? E display_errors?

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    234
    nessun errore segnalato, se per esempio si fa

    copy('pagina1.php','pagina2.php');

    e pagina1 ha al suo interno per esempio: include('pagina3.php'); ... in pagina2.php include non funzionerà più, ma nessun errore.

    grazie - ciao

  6. #6
    Originariamente inviato da filippo.toso
    Come hai impostato l'error reporting? E display_errors?
    A me questo codice funziona perfettamente:

    Codice PHP:
    <pre>
    <?php 
    // file test.php
    error_reporting(E_ALL);
    ini_set('display_errors'1);
    copy(dirname(__FILE__) . '/a.php'dirname(__FILE__) . '/b.php');
    include(
    dirname(__FILE__) . '/b.php');
    ?>
    </pre>
    Codice PHP:
    <?php 
    // file a.php
    print(__FILE__ "\r\n");
    include(
    dirname(__FILE__) . '/c.php');
    ?>
    Codice PHP:
    <?php 
    // file c.php
    print(__FILE__ "\r\n");
    ?>
    Se richiami test.php, che cosa ottieni?

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    234
    così va, ma se provo a richiamare direttamente il file 'b.php' creato con copy non va, va test.php che include b.php, ma b.php direttamente non va.

    Grazie mille per l'esempio di prova.

    Ciao

  8. #8
    A me funziona perfettamente in entrambi i modi (tramite include o chiamata diretta).

    Controlla i log del web server e verifica con quali privilegi viene creato il file b.php

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    234
    se uso require al posto di include e richiamo b.php:

    Fatal error: main(): Failed opening required '/workdisk/... (include_path='.:/usr/local/lib/php') ...

    se apro test.php tutto bene.

    proprio non capisco.

    Ciao

  10. #10
    E si ritorna alla richiesta iniziale ... come hai configurato l'error reporting?
    Se hai i warning disattivati, è ovvio che un include che fallisce NON visualizzerà alcun messaggio.

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.