PHP执行的Python脚本会忽略参数

问题描述 投票:0回答:1

我是菜鸟,所以请耐心...我遇到了一个问题,我的Python脚本(由PHP从Apache服务器启动)忽略了除第一个参数以外的所有其他参数。

PHP GETS变量,在像这样启动脚本时将它们用作参数:

echo exec( "sudo python3 /var/www/html/motor_arg.py $n1 $t1 $n2 $t2" );

Python代码开始,但除$n1以外的所有内容均被忽略,股款结束。当我像这样从shell运行脚本时:python3 motor_arg.py 10 5 20 5效果很好...

老实说,我不知道为什么会这样。非常感谢您的帮助。

python php raspberry-pi3
1个回答
0
投票

HTTP GET请求变量以"superglobal"结尾。您最可能需要这样的东西:$n1 = $_GET['n1']$n1 = $_REQUEST['n1']。我希望您真的信任向此服务器发出请求的任何人。

您还将遇到exec('sudo')的问题。这里有一些答案,也很不安全。 sudo in php exec()

© www.soinside.com 2019 - 2024. All rights reserved.