[Tutor] os.system() not working
Alan Gauld
alan.gauld at btinternet.com
Wed Aug 28 01:34:51 CEST 2013
On 27/08/13 11:33, Nitish Kunder wrote:
> I have a python program which i am calling from a php script.
How are you executing the PHP script?
Which OS? Which web server? Which browser?
Have you tried others?
> The arguments to the program is a path to the file
> The program when directly run from console executes normally.
So the script itself is fine.
> But when I try to execute the program from browser ie call the python
> script from php,
> os.system command is not working what might be the problem.
It may be that the browser is not allowed to execute system commands (I
hope not since that would be a huge security issue!) But I suspect you
are actually running this from a webserver not a browser - that's the
usual PHP environment. The webserver runs PHP which renders up HTML out
to the browser. In that case the os.system call will try to run on the
web server. But it will be running under the webserver account which,
again for good reason, may not be permitted to execute system commands.
Other than that its hard to say anything since you don't tell us what
os.system() is trying to execute nor what "not working" means.
Finally remember that os.system() does not give you any access to data
output by the command, you only get the exit code returned. You will
need to use the subprocess module if you want to use the output of the
system command (eg to send it to the browser to display).
--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
More information about the Tutor
mailing list