ID: 31891 User updated by: rbemrose at vgmusic dot com Reported By: rbemrose at vgmusic dot com Status: Open Bug Type: Feature/Change Request Operating System: Debian Linux unstable -PHP Version: 4.3.10 +PHP Version: 4CVS-2005-02-06 New Comment:
Fixed version number. Previous Comments: ------------------------------------------------------------------------ [2005-02-09 08:17:19] adconrad at 0c3 dot net Note that the submitter isn't actually using 4.3.10, but rather 4.3.11-dev, as of 200502060530, as that is what's in Debian's current php4 packages. This DID work correctly in 4.3.10, and all previous versions, however it was changed in CVS late in January, and bug reports filed about the backward compatibility issue were closed as "bogus" (see, for example, 31757). ------------------------------------------------------------------------ [2005-02-09 07:15:59] rbemrose at vgmusic dot com Description: ------------ Prior to PHP 4.3.10, paths sent as part of a file field had any directory components sent by misbehaving browsers (IE) stripped out. As of 4.3.10, this no longer happens, and breaks all PHP scripts dependant on the old behavior. As an alternative, make basename() strip Windows paths when used on UNIX systems. Reproduce code: --------------- if (get_magic_quotes_gpc()) { $filename = basename(stripslashes($_FILES['file1']['name'])); } else { $filename = basename($_FILES['file1']['name']); } Expected result: ---------------- $filename should contain filename.ext Actual result: -------------- When IE is used, $filename contains Drive:\path\filename.ext ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=31891&edit=1