Voilà, j'ai un problème dans l'utilisation de SOAP avec PHP.
Auparavant, j'ai réussi à faire fonctionner mon code mais depuis que j'ai voulu mettre un shell_exec rien de fonctionne...
Code serveur :
Code PHP :
<?php
$server = new SoapServer(NULL, array('uri' => 'http://localhost/Aide/reverse.php'));
$server->addFunction('cherche_si_repondeur_simpl_exist');
$server->handle();
function cherche_si_repondeur_simpl_exist($num){
$resultat = shell_exec("find /chemin/ -name record".$num.".g729 2> /dev/null | wc -l");
return $resultat;
}
?>
Code client :
Code PHP :
<?php
$service = new SoapClient(NULL, array(
'location' => 'http://10.7.87.55/Aide/reverse.php',
'uri' => 'http://10.7.87.55/Aide/reverse.php',
'trace' => 1,
'exceptions' => 0,
));
$resultat = $service->cherche_si_repondeur_simpl_exist($_SESSION['login']);
if ($resultat[0] == "1") {
$response = "<br /><br />Il existe bien un fichier son pour répondeur simple pour le ".$_SESSION['login'].".<br /><br /><br />";
}
else if ($resultat == 0)
$response = "<br /><br />Il n'existe pas de fichier son pour répondeur simple pour le ".$_SESSION['login'].".<br /><br /><br />";
else
$response = "<br /><br />Erreur dans le script verif_repondeur_simple.php !!!<br />";
ecrire_log($chemin_log.$log_util, "L'utilisateur ".$_SESSION['login']." a détecté l'erreur suivante : Erreur dans le script verif_repondeur_simple.php !!!.\n");
if ($verbose == 1) {
echo "<pre>\n";
// Retourne la requete envoyée au serveur
echo "Request :\n".htmlspecialchars($service ->__getLastRequest()) ."\n";
echo "Response:\n".htmlspecialchars($service ->__getLastResponse())."\n";
echo "</pre>";
}
?>
Je comprends pas pourquoi cela ne fonctionne pas. Le code de la fonction s'exécute parfaitement dans un script PHP mais en utilisant le SOAP ça veut plus...
J'ai l'impression que SOAP refuse d'utiliser la commande shell_exec...
Merci d'avance.