Il punto principale è: qual è lo script ke esegui? Ti spiego. Quando tu esegui una pagina .php la directory di lavoro è quella in cui c'è il file attualmente in esecuzione. Quindi se tu esegui:Originariamente inviato da fpochet
Ciao a tutti,
quando includo un file incluso in un altro file quale path devo utilizzare?
Esempio:
struttura:
A.php
inc/B.php
inc/C.php
fun/D.php
A include B
B include C e D
In A metto
require('inc/B.php');
In B includo con:
require('inc/C.php');
require('../fun/D.php');
e non va!
Il corretto è:
require('inc/C.php');
require('fun/D.php');
Perchè? Qual'è la logica dietro l'inclusione??
Grazie a tutti
http://www.tuosito.it/A.php
la directory di lavoro sarà quella in cui si trova A.php
Ora tu in A hai:
require('inc/B.php');
la directory di lavoro è ancora quella in cui si trova A e non si è spostata nella directory inc/
Infatti tu fai:
In B includo con:
require('inc/C.php');
Se la directory di lavoro si fosse spostata in inc/ avresti dovuto fare semplicemente:
require('C.php');
ma il problema è ke ti trovi nella cartella superiore!
Tale dicitura
require('C.php');
andava bene se avresti fatto:
http://www.tuosito.it/inc/B.php
Alla luce di tutto ciò, quindi puoi capire come
In B includo con:
require('inc/C.php');
require('../fun/D.php');
dia errore require('../fun/D.php'); appunto perché ti trovi nella directory di A.php e per accedere a D.php devi fare require('fun/D.php');
Spero di essere stato chiaro.