tornare alla root con include php

Ciao, ho un problema con gli scrpit php che creo. In particolare quando includo una pagina php che si trova in una cartella (ovviamente nello spazio di lavoro virtuale in cui sto lavorando) uso la notazione "./" + il percorso per accedere al file php che devo includere. Ma questa notazione non va e mi dice che non trova il file. Ho bisogno di usare questa notazione perchè devo includere questo file da più posizioni, in pratica è un menu dinamcio in PHP! Chi può aiutarmi?

inviato 10 anni fa
theneosz
X 0 X

prova ad usare percorsi assoluti e non relativi.

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

..ma a me interessa usare i percorsi relativi perchè se no quando lo passo dal mio webserver in locale al server di aruba devo cambiare ogni volta i percorsi... dovrebbe andare.. perchè non va?  :-\ :'(

risposto 10 anni fa
theneosz
X 0 X

versione di PHP?

c'è differenza di OS fra spazio di test e spazio online?

risposto 10 anni fa
Xscratch
X 0 X

Io uso la versione di PHP 5.1.2 su sistema operativo Windows XP Professional in locale. Ti serve sapere solo questo perchè altre persone di mia conoscenza usano conunque la stessa versione di PHP su stesso sistema operativo e a loro funziona!  :o

risposto 10 anni fa
theneosz
X 0 X

Prova così: $_DOCUMENT_ROOT . "script.php'

In $_DOCUMENT_ROOT c'è il path completo da root del file system fino alla posizione dello script chiamante l'altro file.

attento è una variabile d'ambiente e va scritta in maiuscolo.

risposto 10 anni fa
Marco Grazia
X 0 X

meglio $_SERVER['DOCUMENT_ROOT'] di $_DOCUMENT_ROOT

quando usi i percorsi relativi devi stare attento ad un "dettaglio": questi anno calcolati relativamente al percorso assoluto del primo script caricato. Se ad esempio tu esegui una serie di "include" (A include B, B include C) tutti i percorsi relativi devono essere relativi al file A, anche se inseriti in B e C.

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

la mia è solo una supposizione  ma essendo su windows potrebbe dipendere dalla differenza di carattere separatore di directory (windows \   unix /)?

in questo caso dovresti provare con la costante DIRECTORY_SEPARATOR....

risposto 10 anni fa
Xscratch
X 0 X

Se utilizzi le variabili globali proposte da me o da Gianni, non hai bisogno di modificare nulla nei percorsi, perché li prendono direttamental filesystem, quindi nemmeno li vedi in azione :)

risposto 10 anni fa
Marco Grazia
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda