Execution ssh réussie et pas exécutée

Fermé
lastagiaire - 3 juil. 2008 à 12:18
 lastagiaire - 7 juil. 2008 à 14:37
Bonjour,

je suis en train d'écrire un script php sur windows ( avec easyphp ) et je voudrais me connecter sur un robot avec un linux embarqué. En temps normal, je peux m'y connecter de plusieurs manières :
sur windows avec putty (port 22) ou filezilla
ou sur linux avec un en rentrant ssh suivi de l'adresse ip du robot ou encore en rentrant sftp://@ip dans l'url de konqueror.

j'ai donc écrit un script en m'inspirant du site officiel du manuel du php, et il m'affiche que les commandes ont été réalisées avec succès , ce qui est faux puisque je voudrais lancer un programme sur le robot qui fait tourner une roue.

je précise qu'il ne m'affiche aucune erreur ni warning ni notice. et j'ai bien activé l'extension php-ssh2.

Avez-vous une idée ?

voici le script :

<HTML>
<TITLE>connexion</TITLE>
<BODY>
<BR><BR>
<CENTER>
<H2>Connexion</H2>
<BR><BR>
debut connexion....
<BR><BR>


<?php

ini_set ('max_execution_time', 0);
error_reporting(E_ALL);

echo"enregistrement login password";
echo'<BR><BR>';

$username='*****';
$password='*****';

echo"identifiant = ";
echo $username;
echo'<BR><BR>';
echo"mot de passe = ";
echo $password;
echo'<BR><BR>';


echo"Initialisation de la connexion";
echo"<BR><BR>";

$host='172.26.1.1';
$port='22';

echo"host = ";
echo $host;
echo'<BR><BR>';
echo"port = ";
echo $port;
echo'<BR><BR>';


$connection=ssh2_connect($host, $port);
if ($connection)
{
echo "connection réussie !\n";
echo'<BR><BR>';
}
else
{
echo('Echec de la connection...');
echo'<BR><BR>';
}



$login_result=ssh2_auth_password($connection, $username, $password);

if ($login_result)
{
echo "Identification réussi !\n";
echo'<BR><BR>';
}
else
{
//die('Echec de l\'identification...');
echo('Echec de l\'identification...');
echo'<BR><BR>';
}


echo"Vérification de la connexion";
echo'<BR><BR>';

if ((!$connection) || (!$login_result))
{
echo "La connexion avec identification a echoue !";
echo'<BR><BR>';
exit;
}
else
{
echo "Connexion a l hote $host, port $port pour l utilisateur $username";
echo'<BR><BR>';
}


echo"Initialisation de la variable";
echo"<BR><BR>";
$commande1 = 'cd ../writeable/stage/marche';
$commande2 = './marche';


echo"execution de la commande ";
echo $commande1;
echo"<BR><BR>";

if (ssh2_exec($connection, $commande1))
{
echo $commande1;
echo" executee avec succee";
echo"<BR><BR>";
}
else
{
echo "Impossible d executer : ";
echo $commande1;
echo"<BR><BR>";
}

echo"execution de la commande ";
echo $commande2;
echo"<BR><BR>";

if (ssh2_exec($connection, $commande2))
{
echo $commande2;
echo" executee avec succee";
echo"<BR><BR>";
}
else
{
echo "Impossible d executer : ";
echo $commande2;
echo"<BR><BR>";
}

?>


<BR><BR>
<A HREF="interface.html">Retour a la page d accueil</A>
<BR><BR>
</CENTER>
</BODY>
</HTML>



merci d'avance !!!
A voir également:

2 réponses

bon, en mettant le chemin absolu pour la commande dans le exec, ça marche.....pendant 2 secondes, puis mon robot s'arrete, comment faire pour l'arreter quand je veux ? une temporisation ? ou sur le clic d'un bouton ?
et comment faire pour passer des paramètres en arguments ?
0
en mettant un sleep, la roue tourne plus longtemps;;;

c bon problème résolu !
0