首页 > 解决方案 > Shell_exec 不使用 POST 变量

问题描述

我正在尝试使用shell_execPHP 的函数将值从 POST 变量发送到 Python 2.7。当我尝试使用预定义变量时,它会给出正确的结果,而当我使用 POST 变量时,它不会将参数发送到 python 文件。而且python脚本也没有执行。

我正在使用 AJAX 方法来调用此文件

    //Does not work in this case
         $age = (int)$_POST['age'];
          $gander = $_POST['gander'];
          $occupation = $_POST['occupation'];
          $n = 5;

    //Works when used like this
        $age=25;
        $gander='M';
        $occupation='engineer';
        $n=5;

//For result displaying
          $res = shell_exec("py -2 main.py $age $gander $occupation $n ");
          echo $res;

标签: phppythonajaxpostshell-exec

解决方案


这两个变量几乎相似。当您使用 ajax 方法时,您的帖子值可能具有不同的格式或长度,因此您可以使用它var_dump($var)来检查并纠正两组变量之间的差异。


推荐阅读