我有2個腳本。php不能用MySQLdb執行python腳本
1 - PHP網頁腳本,用於收集用戶的信息,併發送所有收集到的數據作爲參數執行python腳本
2 - Python腳本使用它從參數是sys.argv PHP腳本獲取參數和更新一個MySQL使用MySQLdb
當我通過命令行運行python腳本 - 它的作用就像一個魅力。它做它想做的任何事情。但是當我嘗試使用PHP腳本執行python腳本時 - 直到我從python腳本刪除導入MySQLdb時纔會發生任何事情。
只要從我的python腳本中刪除「導入MySQLdb」 - PHP腳本可以執行它並且它們都可以工作(除了更新MySQL)。
你有沒有想法出了什麼問題?
P.S. 我試圖得到一個錯誤
在Python文件我用這個:
import traceback
import sys
import MySQLdb
# Some classes and functions
if __name__ == '__main__':
try:
main()
except Exception, err:
print traceback.format_exc()
,並在PHP中使用:
$result = shell_exec("/usr/bin/python /FULL_PATH_TO/script.py $argument";
echo $result;
而且還是什麼都沒有。網頁只是重新加載而不提供任何信息
「沒有任何反應」 - 您是否檢查了回溯? – mgilson 2014-10-31 06:31:12
@mgilson更新了關於您的評論的主題 – 2014-10-31 06:53:16
也許環境變量PYTHONPATH在由Web服務器執行時有所不同? PYTHONPATH指示python查找庫... – Paul 2014-10-31 06:57:24