Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Problema include()

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    4

    Problema include()

    Ciao a tutti!

    Ho creato un sito multilingue... Le varie lingue sono gestite tramite codice php dove in base alla lingua selezionata si andrà a prendere il file htm, precedentemente creato, con la frase desiderata tradotta...
    In locale funziona tutto perfettamente ma una volta caricato su server queste inclusioni non funzionano.. anche se seleziono la lingua desiderata non cambiano le scritte avendo cosi solo la frase in italiano...
    Come posso risolvere il mio problema?

    Per aiutarvi a capire vi posto il pezzo di codice php utilizzato:
    Codice PHP:
    <?php include("/web/htdocs/www.miosito.it/home/testi/intaffittacam_$ling.htm");?>

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    I server di solito sono impostati per poter includere solo pagine provenienti dal dominio in uso e il percorso al file deve essere relativo, non assoluto.

    Nel caso invece fosse impostato per accettare anche path assoluti, devi partire da www
    devi togliere /web/htdocs/

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    4
    Originariamente inviato da Alhazred
    I server di solito sono impostati per poter includere solo pagine provenienti dal dominio in uso e il percorso al file deve essere relativo, non assoluto.

    Nel caso invece fosse impostato per accettare anche path assoluti, devi partire da www
    devi togliere /web/htdocs/

    Avevo già eseguito questo motodo di risoluzione ma facendo cosi ho come output il seguente errore:

    include(www.miosito.it/home/testi/intcont_ita.htm): failed to open stream: No such file or directory in /web/htdocs/www.miosito.it/home/services.php on line 147 Warning: include(www.miosito.it/home/testi/intcont_ita.htm): failed to open stream: No such file or directory in /web/htdocs/www.miosito.it/home/services.php on line 147 Warning: include(): Failed opening 'www.miosito.it/home/testi/intcont_ita.htm' for inclusion (include_path='.:/php5.3/lib/php/') in /web/htdocs/www.miosito.it/home/services.php on line 147

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    4
    Originariamente inviato da ilvirgiliota
    se stai richiamando un file nello stesso server
    prova ad usare realpath
    codice:
    from php.net 
    string realpath ( string $path )
    
    realpath() expands all symbolic links and resolves references to '/./', '/../' and extra '/' characters in the input path and return the canonicalized absolute pathname.
    Codice PHP:
    <?php include(realpath("/web/htdocs/www.miosito.it/home/testi/intaffittacam_".$ling.".htm"));?>


    Anche inserendo il codice da te suggerito non accade nulla

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Usa un path relativo, ti ho detto che di norma i server sono impostati per non accettare path assoluti per file da includere.

    www.miosito.it/home/testi/intcont_ita.htm
    è un path assoluto.

    Nell'include mettici il percorso del file da includere relativo alla posizione della pagina in cui lo vuoi includere.

    Esempio:
    - il file da includere è
    www.miosito.it/home/testi/intcont_ita.htm

    - il file in cui va incluso è
    www.miosito.it/home/pagina.php

    devi fare
    include('testi/intcont_ita.htm');

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    4
    Originariamente inviato da Alhazred
    Usa un path relativo, ti ho detto che di norma i server sono impostati per non accettare path assoluti per file da includere.

    www.miosito.it/home/testi/intcont_ita.htm
    è un path assoluto.

    Nell'include mettici il percorso del file da includere relativo alla posizione della pagina in cui lo vuoi includere.

    Esempio:
    - il file da includere è
    www.miosito.it/home/testi/intcont_ita.htm

    - il file in cui va incluso è
    www.miosito.it/home/pagina.php

    devi fare
    include('testi/intcont_ita.htm');



    Inizialmente ho usato già il path relativo... avendo il seguente errore:

    Warning: include(testi/intcont_.htm): failed to open stream: No such file or directory in /web/htdocs/www.miosito.it/home/services.php on line 144 Warning: include(testi/intcont_.htm): failed to open stream: No such file or directory in /web/htdocs/www.miosito.it/home/services.php on line 144 Warning: include(): Failed opening 'testi/intcont_.htm' for inclusion (include_path='.:/php5.3/lib/php/') in /web/htdocs/www.miosito.it/home/services.php on line 144

    Per questo ho usato il path assoluto almeno non avevo in uscita l'errore...
    Che problema può essere?

  7. #7
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Originariamente inviato da dev92
    Inizialmente ho usato già il path relativo... avendo il seguente errore:

    Warning: include(testi/intcont_.htm): failed to open stream: No such file or directory in /web/htdocs/www.miosito.it/home/services.php on line 144 Warning: include(testi/intcont_.htm): failed to open stream: No such file or directory in /web/htdocs/www.miosito.it/home/services.php on line 144 Warning: include(): Failed opening 'testi/intcont_.htm' for inclusion (include_path='.:/php5.3/lib/php/') in /web/htdocs/www.miosito.it/home/services.php on line 144

    Per questo ho usato il path assoluto almeno non avevo in uscita l'errore...
    Che problema può essere?
    Hai notato che il nome del file è troncato a intcont_ ? Manca ita.
    La variabile che deve aggiungerci ita, eng o quello che è, è vuota.
    Controlla come la valorizzi e come la passi all'include.
    Vedrai che col path relativo e la variabile messa a posto ti funziona tutto.

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.