2012-06-07 3 views
2

Я пытаюсь запустить скрипт python с php.Запуск сценария python из php

exec("../cgi-bin/form.py", $output); 
var_dump($output); 

Я уверен, что путь правильный, и что form.py является исполняемым.

это form.py

#!/usr/bin/env python 
print "IN form.py' 

Однако это печатает NULL. Я не думаю, что сценарий выполняется. Как я могу убедиться, что это так?

+0

Если вы набираете ** какой python ** из командной строки, он должен предоставить вам полный путь к исполняемому файлу python. Затем вы можете использовать этот путь и ввести его в начало своего скрипта form.py. – ku6pk

+0

У меня нет доступа к оболочке :( – ehsangh

+0

Вы можете использовать php exec для запуска команды, я подозреваю, что возвращаемое значение будет **/usr/bin/python **. – ku6pk

ответ

4

Вы буквально просто печатаете местоположение файла. Вы должны сказать exec выполнить python с этим скриптом.

exec("python ../cgi-bin/form.py", $output); 
+0

Если он задает правильный путь к питону в своем скрипте и убедился, что его скрипт является исполняемым, тогда не обязательно добавлять python в команду exec :) – ku6pk

+0

Очень верно, но справедливо предположить это не выполнимо, так как он не получал выход для начала. –

+0

@MarcusRecck, поэтому я добавил заголовки в form.py, и я добавил эту ссылку в php: echo ('CLICK'); который работает! поэтому каталог корректен, и скрипт работает нормально. Кроме того, добавление python ничего не делало. все еще выводящий нуль – ehsangh

Смежные вопросы