Exécuter script PowerShell en PHP

kevy -  
 kevy -
Bonjour,

On saisi un formulaire et les données sont envoyé en tant que paramètre dans le script PowerShell.

Mais ça me renvoi NULL à chaque fois.

Code PHP
           $varia = $this->request->getParameter('variable'); # Récupére le POST
            $script = $_SERVER['DOCUMENT_ROOT']."/site/modules/Script/requete.ps1";
            $result = Shell_Exec("powershell -file $script -variable '$varia'  < NUL");


Code Powershell

param(
[string]$variable
)

Write-Output $variable


Merci pour votre aide.

2 réponses

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Essayes ça et dis nous ce que ça t'affiche
    $varia = $this->request->getParameter('variable'); # Récupére le POST
    $script = $_SERVER['DOCUMENT_ROOT']."/site/modules/Script/requete.ps1";
    if(!empty($varia)){
      $cmd = "powershell -file $script -variable '$varia'  < NUL";
      echo $cmd . PHP_EOL; // le temps des tests..
      $escaped_command = escapeshellcmd($cmd);
      echo $escaped_command . PHP_EOL; // le temps des tests..
      $result = Shell_Exec($escaped_command);
    }else{
      echo "La variable est vide !" . PHP_EOL;
    } 
    
     


    .
    1
    1. kevy
       
      D'accord.
      Merci
      0
  2. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour
    Pour commencer.. tu utilises un framework php ? Lequel ?
    Ensuite, fais un var_dump de ta variable pour voir ce qu'elle retourne.
    Et puis, as tu essayé d'appeler ton script powershell à la main pour voir si ta ligne de commande est exacte ?

    -1