我在寫一個web應用程序,它將使用HTML來顯示錶單。然後用戶完成表單,並在提交時將表單發送到PHP。在PHP文件中,我已經設置了對將返回數據的Python文件的調用和exec()命令。但由於某種原因,我沒有得到任何回報。當我在終端中執行命令時,它工作的很好,但我們沒有在網絡瀏覽器中運行響應。爲什麼我的PHP exec()在嘗試調用Python函數時工作?
HTML:
<form id ="nameForm" action="python.php" method="post" target="_blank">
<label>First Name:</label><input type="text" id="firstName" name="firstName"><br>
<label>Last Name:</label><input type="text" id="lastName" name="lastName"><br>
<input type="submit" id="submitName" value="Submit">
</form>
PHP:
$firstName = $_REQUEST['firstName'];
$lastName = $_REQUEST['lastName'];
exec("/opt/http/PythonWeb/web/python pythonName.py " . $firstName . " " . $lastName, $response);
echo $response;
的Python:
import sys
def main():
firstName = sys.argv[1]
lastName = sys.argv[2]
output = ""
output += "<html>\n"
output += " <head><title></title></head>\n"
output += " <body>\n"
output += " <p>Hi " + firstName + " " + lastName + "</p>\n"
output += " </body>\n"
output += "</html>\n"
print output
if __name__ == '__main__': main()
請給我一些建議,什麼可能是錯誤的。我對Python很陌生,但這正是老闆們想要的......所以我會做這個工作。謝謝!
對於我來說,爲了這個目的混合使用PHP和Python似乎有點愚蠢。我會建議你用Python編寫你的應用程序或者用PHP編寫你的應用程序,但不能同時使用它們。 – rdlowrey 2012-02-20 15:56:57
你確定你的服務器允許passthru嗎?如果是這樣,當你用一個更常見的內置命令嘗試它時會發生什麼?你有輸出嗎?也可以嘗試放入'error_reporting(-1);' – Mike 2012-02-20 15:57:16