phpbar.de logo

Mailinglisten-Archive

[php] Include-Path arbeitet falsch

[php] Include-Path arbeitet falsch

Sebastian Mendel lists at sebastianmendel.de
Mon Jul 11 11:15:26 CEST 2005


Nico Haase wrote:
> Moin,
> ich habe irgendwie Probleme mit dem Setzen des Include-Paths. Über das
> Konstrukt
> 
> <pseudo>
> DROOT = '/var/www/buchtips.net/www';
> IP_TRENNER = ':';
> $actual_include = get_include_path();
> set_include_path ( $actual_include . IP_TRENNER .  DROOT );
> </pseudo>
> 
> verändere ich den Include-Path, sodass das Root-Verzeichnis meiner Scripte
> immer drinsteht. Damit kann ich dann auch per include ( '../funktionen.php'
> ); auf funktionen.php zugreifen, und dort werden weitere Scripte included.
> Denkste! Statt funktionen.php richtig im DROOT zu suchen, gips:
> 
> Warning: main() [function.main]: open_basedir restriction in effect.
> File(/php/includes/mysql.inc.php) is not within the allowed path(s):
> (/var/www/buchtips.net/www) in
> /var/www/buchtips.net/www/ordner/login.inc.php on line 4
> 
> Warning: main() [function.include]: Failed opening 'mysql.inc.php' for
> inclusion
> (include_path='.:/php/includes:/usr/share/php:/var/www/buchtips.net/www/')
> in /var/www/buchtips.net/www/ordner/login.inc.php on line 4


die Pfade werden der Reihe nach abgearbeitet, da wo die Datei zuerst
gefunden wird, wird sie auch verwendet -> häng dein Pfad _vorne_ davor!

DROOT = '/var/www/buchtips.net/www';
IP_TRENNER = ':';
$actual_include = get_include_path();
set_include_path ( DROOT . IP_TRENNER . $actual_include );


include_path='/var/www/buchtips.net/www/:.:/php/includes:/usr/share/php'


oder evtl. besser:

set_include_path ( '.:' . DROOT . IP_TRENNER . $actual_include );

include_path='.:/var/www/buchtips.net/www/:.:/php/includes:/usr/share/php'


-- 
Sebastian Mendel

www.sebastianmendel.de
www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet

php::bar PHP Wiki   -   Listenarchive