Jean-Pierre Gallou schrieb:
> Goetz Lohmann wrote :
>
>> wich means that "testinclude.php" includes "inc/inc1.php"
>> and "inc/inc1.php" includes "inc/inc2.php" ?
>
>
> Right. I'm sorry, I didn't modify testinclude.php as you suggested, but
> inc1.php. With a modified testinclude.php:
> <? include ('./inc/inc1.php'); ?>
> I get:
> Failed opening './inc/inc1.php' for inclusion \
> (include_path='.:..:/usr/local/php-4.3.0/lib/php')
>
> Seems it doesn't like './' ("inc/inc1.php" is OK). I think that since
> the name begins with '.', PHP tries to find a file in the working dir,
> which is null (see below).
this is very strange cause I got it working with "./inc/inc1.php" and with
"inc/inc1.php" ... "/inc/inc1.php" fail cause its searching the file in the
server root ... also "inc1.php" will fail cause it searches it in the
working dir of testinclude.php ... did you set
doc_root = /usr/local/www/htdocs
than maybe leave this blank !
>> insert something like into inc1.php and inc2.php:
>>
>> <?php
>> echo "inc included<br>\n";
>> echo "<br>\n";
>> $folder=dir('inc');
>> // print out folder "inc"
>> while($datei = $folder->read()) {
>> echo "$datei<br>\n";
>> }
>> $folder->close();
>> echo "<br>\n";
>> ?>
>
>
> Unfortunately, this gives nothing. I guess this is because pathnames of
> files are relative to the working dir.
yes if the path not start with "/"
> There are only two variables,
> PATH and TZ in the environment of my Apache server, but nothing about a
> working dir: cwd() returns an empty string, and so does `pwd` or `ls`.
> Relative pathnames of included files are apparently resolved through a
> special way, unless they begin with '.' or '..'. But this is not clearly
> described in the documentation, and it's a bit confusing.
if a file is parsed, all include files a relativ to this parsed file.
with phpinfo() you could read the document root in the "PHP Variables"
section which might look like
PHP_SELF /phpinfo.php
_SERVER["DOCUMENT_ROOT"] /usr/local/www/htdocs
...
_SERVER["SCRIPT_FILENAME"] /usr/local/www/htdocs/phpinfo.php
_SERVER["SCRIPT_URI"] http://www.yourdomain.com/phpinfo.php
...
_SERVER["PATH_TRANSLATED"] /usr/local/www/htdocs/phpinfo.php
...
a "." mean working dir and ".." mean parent dir
echo exec('ls');
should print out not a empty string but
testinclude.php
and
echo exec('pwd');
should print "/usr/local/www/htdocs/tests"
--
@ Goetz Lohmann, Germany | Web-Developer & Sys-Admin
\/ ------------------------------------------------------
() He's the fellow that people wonder what he does and
|| why the company needs him, until he goes on vacation.
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php