#21065 [Com]: shell_exec seems not to work properly if result was false.

From: Date: Tue, 11 Feb 2003 07:41:07 +0000
Subject: #21065 [Com]: shell_exec seems not to work properly if result was false.
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-32739@lists.php.net to get a copy of this message
ID: 21065 Comment by: dj-bj@gmx.net Reported By: dj-bj@gmx.net Status: Bogus Bug Type: Program Execution Operating System: Windows 2000 Server PHP Version: 4.2.3 New Comment: Thank you for the tip to add 2>&1 to the command. This prevents any crashed output from beeing sent to the page (take >nul for no output). The documentation says: shell_exec -- Execute command via shell and return complete output as string and not Execute command via shell and return complete output as string only if exectued command is true but crash when false.. However, thank you for your assistance. Regards, Bj Previous Comments: ------------------------------------------------------------------------ [2003-02-10 16:37:26] iliaa@php.net Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php If you want to recieve the error messages append '2>&1' to the end of the command you are executing. This will work on any *nix based system as well as most recent Win32 server oses such as Windows NT and Windows 2000. ------------------------------------------------------------------------ [2002-12-20 02:50:17] dj-bj@gmx.net I installed this version using the old ini file - no errors execpt the one reported. Still, the result of shell_exec is not passed to the variable but displayed on the page with added " Content-type: text/html X-Powered-By: PHP/4.4.0-dev " after the error message. In my script i control some nt services and therefor i tell shell_exec to execute net start / net stop. If a service has already been started and i attempt to start it again it returns the error "More help is available by typing NET HELPMSG 2182." like in DOS Shell on Windows but this error not passed to the variable. ------------------------------------------------------------------------ [2002-12-19 19:15:53] iliaa@php.net Please try using this CVS snapshot: http://snaps.php.net/php4-latest.tar.gz For Windows: http://snaps.php.net/win32/php4-win32-latest.zip ------------------------------------------------------------------------ [2002-12-17 06:41:55] dj-bj@gmx.net Running PHP 4.2.3 on Windows 2000 Server shell_exec works fine and passes its output to the variable when the result of the executed command is true. However, if the command fails and the DOS-shell returns an error the result is no longer availiable in the variable but is passed directly to the page. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=21065&edit=1

« previous php.bugs (#32739) next »