#25448 [Com]: $_SERVER['PHP_SELF'] fails to return a value (broken since 4.3.2)
| From: | renegaderesearch at hotpop dot com | Date: | Sun, 22 Aug 2004 04:46:08 +0000 |
| Subject: | #25448 [Com]: $_SERVER['PHP_SELF'] fails to return a value (broken since 4.3.2) | ||
| References: | 1 | Groups: | php.doc |
| Request: | Send a blank email to phpdoc+get-969363391@lists.php.net to get a copy of this message | ||
ID: 25448
Comment by: renegaderesearch at hotpop dot com
Reported By: david at advisorymatters dot co dot uk
Status: Closed
Bug Type: Documentation problem
Operating System: win32
PHP Version: 4.3.3
New Comment:
Directed to comment here from bug #25450:
I'm using PHP 3.4.8 on Apache(Module not cgi) on Windows 98 SE.
$_SERVER['PHP_SELF'] = /index.php
Reproduce code:
---------------
echo dirname($_SERVER['PHP_SELF']);
Expected result:
----------------
/
Actual result:
--------------
\
Previous Comments:
------------------------------------------------------------------------
[2004-08-07 19:09:35] vrana@php.net
This bug has been fixed in the documentation's XML sources. Since the
online and downloadable versions of the documentation need some time
to get updated, we would like to ask you to be a bit patient.
Thank you for the report, and for helping us make our documentation
better.
"If you want use $_SERVER['PHP_SELF'] you have to enable
cgi.fix_pathinfo directive."
------------------------------------------------------------------------
[2003-11-03 05:05:09] phildriscoll@php.net
The windows installer distribution for php 4.3.4 has been
changed to set cgi.fix_pathinfo=1 when intalling for
Xitami web servers.
------------------------------------------------------------------------
[2003-09-12 04:56:04] david at advisorymatters dot co dot uk
Yes, thanks sniper, That fixed it (and apologies for being rather short
in one of my earlier (now deleted) replies - I was having a bad day!) I
have added a short note to the PHP/Xitami docs page about this
requirement.
------------------------------------------------------------------------
[2003-09-11 21:11:16] sniper@php.net
Set this in your php.ini and this will work:
cgi.fix_pathinfo=1
This setting defaults to 0 for some backwards compatibility
reasons with some other web servers.
Should be documented on the Xitami install page (and maybe the cgi
page?)
------------------------------------------------------------------------
[2003-09-09 06:59:11] david at advisorymatters dot co dot uk
Description:
------------
Running the code (below) on 4.3.2 and above (I've checked it on 4.3.2,
4.3.3RC1 to RC4 and 4.3.3) fails to produce any output. On 4.3.0 and
4.3.1 it works fine.
For testing I am changing over the PHP versions just by renaming the
c:\php dir (from c:\php431, c:\php432, c:\php433-1 etc). Nothing in the
application changes and I am using one common php.ini file for all php
versions, ONLY the php version itself is changed. All PHP versions are
the standard Win32 Binaries with no modifications.
In php.ini register globals are OFF and the only other changes are to
turn a few extensions on (GD and DBX).
I am using the Xitami web server version 2.4d9 from
http://www.xitami.com on a Compaq Evo system (Celeron 1.8MHz,
128MB
RAM, WinXPPro).
I've noticed that this (or similar) bugs have been reported recently
(e.g. #24979) but dismissed by stating that it works with the latest
CVS etc. If this is the case when this bug report is checked then I
would suggest that there is something else going on here that is not
showing up on your test systems. It is ALWAYS reproducible here. Note
that using $_SERVER['SCRIPT_NAME'] DOES work (but my code tends to use
$_SERVER['PHP_SELF'] and why should I change?).
Reproduce code:
---------------
<?php
print "self = " . $_SERVER['PHP_SELF'];
?>
Expected result:
----------------
With the above code in the file test.php in the web server's document
root:
self = /test.php
Actual result:
--------------
self =
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=25448&edit=1