Bonsoir à vous tous,
Tout d'abords je souhaite expliquer le contexte de mon projet ici. Étant étudiant en BTS Informatique de Gestion 2ième Année Option Développeur, j'ai pour but de réaliser plusieurs petits outils durant ma période de stage, tout ceci dans le but de récupérer des champs dans Active Directory (ex : nom,prénom,compteWindows,email,...) pour pouvoir permettre aux utilisateurs du domaine, d'utiliser les mêmes identifiants et mot de passe, que les sessions windows, pour se connecter sur tel ou tel portail pédagogique.
J'ai fais un schéma pour comprendre un peu l'ensemble de mon projet.
Pour ce qui est de l'appli1 tout est bon, je récupère les informations souhaitées (le fichier texte étant là pour récupérer les mots de passe, sachant que ce champs n'est pas récupérable directement dans AD et par la suite faire le lien avec les identifiants)
Structure du fichier:
----------------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 id1 pwd1 id2 pwd2 id3 pwd3
Sur l'hébergement externe j'ai simplement crée une DB ayant sensiblement la même structure que la base mySQL dans le domaine (juste pour des test simples).
J'aborde maintenant l'appli2, le côté serveur du service web est fait, à travers une class 'connexion' (faite en php) j'ai bien l'accès à mes méthodes accesseurs à partir de l'appli en .NET.
Un morceau de ma class 'connexion'
En outre, j'ai un problème au niveau d'une de mes méthodes (un simple SELECT). En php tout vas bien, si je fais un echo de ma méthode, du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 class connexion { // Variables privées private $serveur; private $utilisateur; private $password; private $database; private $resultat; //Constructeur public function __construct($serveur, $utilisateur, $password, $database) { $this->serveur = $serveur; $this->utilisateur = $utilisateur; $this->password = $password; $this->database = $database; mysql_connect($this->serveur,$this->utilisateur,$this->password); mysql_select_db($this->database); $query = "SELECT * FROM maTable WHERE id = '15'"; //Requête de test, pas de WHERE pour l'instant, on passe juste un id au hasard $req = mysql_query($query); $data = mysql_fetch_assoc($req); $this->resultat = $data['nom']; } //L'accesseur public function getResultat() { return $this->resultat; }
Sur un navigateur, j'ai bien le nom de l'utilisateur ayant l'id passé en paramètre (ceci reste à faire).
Code : Sélectionner tout - Visualiser dans une fenêtre à part echo $connexion->getResultat();
Voila l'objet de mon problème maintenant. Je passe par un WinForm pour travailler avec le service, je clique sur le bouton pour invoquer cette méthode à afficher dans une messageBox et la rien ne s'affiche. Tout étant entre 'Try Catch EndTry' pas d'exception levée. Juste un resultat = ""...
Donc je ne trouve pas mon problème, peut-être est-ce l'encodage, mais je n'y crois pas trop car si je retourne juste une chaine comme :
à partir de la méthode dans le winForm j'ai bien 'test' qui apparait à l'écran.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $this->resultat = 'test'; return $this->resultat;
Si quelqu'un veut bien m'éclairer sur ce sujet, je suis preneur car pas moyen de trouver ou ça bloque.
Cordialement, Lope_
Partager