我有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