Executer des fonctions d'un service d'un ordinateur distant

Le
syc2000
Bonjour,

Mon application, en PHP sous Apache, a besoin d'utiliser des fonctions
venant d'un exécutable installé sur un serveur distant IIS; Cet
exécutable est considéré sur ce serveur comme un service.
Il s'agit d'un programme de réservation.

Voici le code en ASP, mais je n'arrive pas à le traduire en PHP:
Ca fait une semaine que je teste les Com, classes, exec, mais rien à
faire.
Avant de m'arracher tous les cheveux, je me suis dit que je pouvais
essayer de demander de l'aide ici

Code:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SVR;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Label2.Text = "";
Label3.Text = "";
Label4.Text = "";

}
protected void Button1_Click(object sender, EventArgs e)
{
SVR.ISVRWEBservice S = new SVR.ISVRWEBservice();
//==> Appel de la fonction GetVersionServeur
Label2.Text = "v " + S.GetVersionServeur();
}

protected void Button2_Click(object sender, EventArgs e)
{
SVR.TSeanceParam seance = new TSeanceParam();
seance.NoComplexe = int.Parse(TextBoxNoComplexe.Text);
seance.NoSalle = int.Parse(TextBoxNoSalle.Text);
seance.Heure = DateTime.Parse(TextBoxHeure.Text);

seance.Heure = seance.Heure.AddHours(-2);

int placeRestante = 0;
int placeReservable = 0;
string erreur = "";

SVR.ISVRWEBservice S = new SVR.ISVRWEBservice();
//==> Appel de la fonction GetPlaceRestante
S.GetPlaceRestante(seance, ref placeRestante, ref
placeReservable, ref erreur);

if (erreur != "")
{
Label3.ForeColor = System.Drawing.Color.Red;
Label3.Text = erreur;
}
else
{
Label3.ForeColor = System.Drawing.Color.Black;
Label3.Text = string.Format("{0} places restantes {1}
réservables", placeRestante, placeReservable);
}
}
}


Merci d'avance pour votre aide,
Sylvie

  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
piotr
Le #94772
Bonjour,


Bonjour,


Mon application, en PHP sous Apache, a besoin d'utiliser des fonctions
venant d'un exécutable installé sur un serveur distant IIS; Cet
exécutable est considéré sur ce serveur comme un service.


Et de quelle manière Apache doit-il s'y prendre pour utiliser le service
d'un serveur distant ?

Il s'agit d'un programme de réservation.

Voici le code en ASP, [...]
using SVR;


SVR c'est le machin de réservation ?

SVR.ISVRWEBservice S = new SVR.ISVRWEBservice();


Je ne suis pas un pro de .Net, mais si je comprends bien, ce code
instancie le web service fourni par une appli qui tourne sur un serveur
Windows.

Si ce machin contient bien un web service, ton code PHP/Apache doit
pouvoir l'interroger dans les règles de l'art (voir le descripteur WSDL
du service).

Si ce machin n'est pas interrogeable, alors il faut lui faire une
interface, afin qu'un autre serveur (Apache/PHP par exemple) puisse lui
causer de manière à peu près intelligible (SOAP, XML, etc)

Question simple: t'as pas une doc, avec le service de réservation ?

syc2000
Le #94536
Bonjour,

J'ai trouvé qu'il faut utiliser les méthodes SOAP, et cela
fonctionne.
Merci pour votre réponse.
Sylvie



Bonjour,


Bonjour,


Mon application, en PHP sous Apache, a besoin d'utiliser des fonctions
venant d'un exécutable installé sur un serveur distant IIS; Cet
exécutable est considéré sur ce serveur comme un service.


Et de quelle manière Apache doit-il s'y prendre pour utiliser le service
d'un serveur distant ?

Il s'agit d'un programme de réservation.

Voici le code en ASP, [...]
using SVR;


SVR c'est le machin de réservation ?

SVR.ISVRWEBservice S = new SVR.ISVRWEBservice();


Je ne suis pas un pro de .Net, mais si je comprends bien, ce code
instancie le web service fourni par une appli qui tourne sur un serveur
Windows.

Si ce machin contient bien un web service, ton code PHP/Apache doit
pouvoir l'interroger dans les règles de l'art (voir le descripteur WSDL
du service).

Si ce machin n'est pas interrogeable, alors il faut lui faire une
interface, afin qu'un autre serveur (Apache/PHP par exemple) puisse lui
causer de manière à peu près intelligible (SOAP, XML, etc)

Question simple: t'as pas une doc, avec le service de réservation ?



Olivier Miakinen
Le #94534

J'ai trouvé qu'il faut utiliser les méthodes SOAP, et cela
fonctionne.


[ suivi d'une quarantaine de lignes de citation ]



Tu as eu de la chance de tomber sur un modérateur sympa !

À tout hasard va quand même lire la doc suivante :
;-)


Publicité
Poster une réponse
Anonyme