Executer un script shell avec exec de php

Résolu
Bonjour,

voila ce qui m'ammene, j'ai une page php contenant un formulaire a remplir, une fois ce formulaire rempli et soumis, les valeurs sont envoyer à un script shell

voila ma page php : page.php

je zape la partie head et une partie du body pour arriver directement au formulaire

<form id="FormText" action="page.php" onsubmit " " method="post">
<table width="30%" class="ignorer">
<td align="center" class="ignorer">selection 1</td>
<select size="1" name"var1" class="ignorer">
<option value="1">srv-prod</option>
<option value="2">srv-test</option>
</select>
</table>
<td class="ignorer">saisir info2</td>
info2:
<br><input type="text" name="var2" size="20" class="ignorer"></br>
<p></p>
<input value="soumettre" onclick="submit" type="submit">
</form>

<?php
$path="/path/de/mon/script.sh $var1 $var2";
$sortie="/path/de/mon/sortie";
$retour="/path/de/mon/retour";

exec ($path,$sortie,$retour);
foreach ($sortie as $text)

{
echo $text;
echo "<br>";
}
if ($retour=0) echo "erreur";
?>

et mon script .sh

#!/bin/sh

echo $1 > /tmp/res.txt
echo $2 >> /tmp/res.txt

voila
donc quand je remplie mon formulaire de ma page php et que je clique sur soumettre, la page doit envoyer $var1 et $var2 dans mon script, et mon script doit donc écrire ces deux valeurs (devenus $1 et $2 le exec de la page lance le script en passant les variables en même temps) dans le fichier res.txt

cependant lorsque je clique sur soumettre il n'y a rien dans mon res.txt
la page ne me retourne pas d'erreur
les log d'apache me confirment que le post ce fais bien

si quelqu'un à une idée merci d'avance
Configuration: Windows XP
Firefox 2.0.0.18

2 réponses

  1. du coup j'ai trouver mon probleme

    il venait de ma conf php
    je suis en php 4.3.9 et depuis la 4.2 par defaut la valeur global_registers est à off du coup mes variables n'était pas passé tel quelles
    en passant la valeur à on tous marche nicquel

    voila

    si sa peut servir à d'autre
    1. svp pouvez m'aider j'ai un probleme au niveau d'exécution d'un script sous php !!
  2. j'ai transforme ma page php en une page html comme suit
    page.html

    je zape la partie head et une partie du body pour arriver directement au formulaire
    <html>
    <head>
    <title>test</title>
    </head>

    <body>
    <form id="FormText" action="page.php" onsubmit " " method="post">
    <table width="30%" class="ignorer">
    <td align="center" class="ignorer">selection 1</td>
    <select size="1" name"var1" class="ignorer">
    <option value="1">srv-prod</option>
    <option value="2">srv-test</option>
    </select>
    </table>
    <td class="ignorer">saisir info2</td>
    info2:
    <br><input type="text" name="var2" size="20" class="ignorer"></br>
    <p></p>
    <input value="soumettre" onclick="submit" type="submit">
    </form>
    </body>
    </html>

    j'ai créer une deuxieme page php permettant de verifier les variables
    page.php
    <html>
    <head>
    <title>test2</title>
    </head>
    <body>
    <h1> resultat</h1>
    <?php
    //variable var1 et var2 étant envoye par page.html lors du clique sur soumettre
    $path="path/de/script.sh $var1 $var2";
    //test d'envoye des variable
    echo $path;
    ?>
    </body>
    </html>

    voila

    du coup lorsque je vais sur ma page.html je remplis le formulaire et je clique sur soumettre
    et j'arrive sur page.php, cette derniere affiche :
    juste path/de/scipt.sh sans les variables, du coup je pense que l'envoye des variables par page.html se fait pas ou mal

    si quelqu'un à une idée, merci d'avance