如何使用函数 shell_exec() PHP

How to use the function shell_exec() PHP

我的函数 shell_exec() 有问题,我已经尝试了所有方法,但我不知道问题出在哪里。我有这个 php 程序可以验证您是否登录,我想使用 cookie,但我工作的公司的 apache 服务器不允许我使用我不知道为什么。所以通常在这个程序中我会检查我是否已经启动了我的会话,如果我没有,我会使用用户在之前页面中的文本案例中输入的登录名,如果我这样做(已经启动了我的会话),我将使用我之前在文本案例中输入的登录名,现在存储在会话变量中。我不知道这样做是否正确,但这就是我提出的解决方案。我不是 php 方面的专家。 所以问题是函数 shell_exec() 在第一个 "if" 之外工作但不在条件中,当我进入条件时它 returns 我什么都没有。我想知道你的意见。

这是代码:

     $login = $_POST['login_venezia'];

if (isset($login))
{

    $log = $login;

    if($_SESSION['login_test']!=NULL)
    {
       $tableau = shell_exec('groups'.$_SESSION['login']);
       echo "1";
       echo $_SESSION['login']."\n";
    }
    else
    {
       $tableau = shell_exec('groups'.$log); 
       echo "2";
       echo "Login = ".$log;
    }


    //$tableau = shell_exec('groups '.$log);
    echo "Login = ".$login;
    echo "Tableau = ".$tableau;
    $resultat = explode(" ",$tableau);
    $cookies = $_COOKIE['session_ser'];
    die;

    $path = dirname($_SERVER['PHP_SELF']); //chemin avant de fichier courant
    $path_separe = explode('/',$path); //nous retourne la chaine de caractere donc le chemin du fichier mais sans les slash
    $lenght = count($path_separe);
    $imp = $path_separe[$lenght-2];

    if($tableau != NULL)
    {

        for($i=0; $i<count($resultat);$i++)
        {
            if($resultat[$i] === $imp && $cookies!=NULL)
            {
                $valeur = 1;
            }
        }
        if($i === count($resultat))
        {
            //header('Location: verifnon.php?mavar=1'); //n'appartien pas au projet
        }

    }
    else
    {
        //header('Location: compteinexistant.php?mavar=1'); //son compte existe pas  
        echo "Erreur";
    }


    if($valeur === 1)
    {
        session_cache_limiter('private');
        $cache_limiter = session_cache_limiter();

        /* Configure le délai d'expiration à 30 minutes */
        session_cache_expire(1440);
        $cache_expire = session_cache_expire();

        session_start();
        $_SESSION['login'] = $login;

       //header('Location: verifoui.php?mavar=1'); 
    }
}
else
{
    echo "Veuillez saisir votre login \n";
}

在组后面加上 space 否则你是 运行 'groupslogin' 这不是命令:

if($_SESSION['login_test']!=NULL)
{
   $tableau = shell_exec('groups '.$_SESSION['login']);
   echo "1";
   echo $_SESSION['login']."\n";
}
else
{
   $tableau = shell_exec('groups '.$log); 
   echo "2";
   echo "Login = ".$log;
}