Socket <---> PHP : problème
Utilisateur WDF
Inscrit:
04/02/2005 12:35
Post(s): 69
Bonjour,

J'essaye de faire communiquer un client PHP avec un serveur Windev avec des sockets.

Je vois qu'il recoit bien la demande de connexion, il crée bien un thread pour répondre à la personne sur le canal. Malheureusement il ne recoit aucune information. J'ai donc pensé au Mode de transmission

Je vois met le code Windev :

SI PAS SocketCrée("serveur",8000) ALORS
	Erreur("Impossible de créer la socket" + ErreurInfo(errMessage))
SINON
	SocketChangeModeTransmission("serveur",SocketMarqueurFin);
	ThreadExécute("Thread1",threadNormal,ProcédureAttente)	
FIN
....

PROCEDURE ProcédureAttente()
Info("Procedure Attente")
SI SocketAttendConnexion("serveur") ALORS
	Info("Réception demande connexion")
	canal est une chaîne
	canal = SocketAccepte("serveur")
	ThreadExécute(canal,threadNormal,ProcedureGestion,canal)	
FIN	

....

PROCEDURE ProcedureGestion(canal est une chaîne)
// Maintenant on va lire les information dans le socket
TotalSource,TotalDestination,Résultat est un réel = 0
CodeRetour est un entier
//
Info("En attente d'information")
Numcarte est une chaîne = SocketLit(canal)
Info("Première information recue")
Dateexpiration est une chaîne = SocketLit(canal)
Numcomptebrut est une chaîne = SocketLit(canal)
// On modifie le numero de compte car on ne sait pas modifier
//
Montanttransfert est une chaîne = SocketLit(canal)
Info(Numcarte + "#" + Dateexpiration + "#" + Numcompte + "#" + Montanttransfert)
Montantdemandé est un réel = Montanttransfert



Maintenant mon code PHP

 $canal = fsockopen("192.168.1.24",8000,&$errno,&$errst,30);
 if (!$canal) {
    echo "$errstr ($errno)\n";
 } else {
 fputs($canal,"v,fkv,dlvkld,\n");
 $resultat = fgets($canal);
 }
 fclose($canal);


Voilà je suis un peu perdu , j'ai un peu tout essayer merci si quelqu'un sait m'éclairer

Contribution le : 01/07/2005 16:32
Créer un fichier PDF de la contribution Imprimer


Re: Socket <---> PHP : problème
DSI WDF
Inscrit:
15/03/2005 14:22
Post(s): 238
Le comportement est normal face à ce qui est demandé.

Ton serveur PHP doit attendre une réponse. Là, il regarde ce qui lui a été envoyé (la réponce n'a pas le temps d'arriver) et passe à la suite.

Contribution le : 01/07/2005 16:44
Créer un fichier PDF de la contribution Imprimer


Re: Socket <---> PHP : problème
Anonyme
oui, mais le programme Windev devrait quand même recevoir des données non ?

Contribution le : 05/07/2005 13:07
Créer un fichier PDF de la contribution Imprimer


Re: Socket <---> PHP : problème
Anonyme
oui, mais le programme Windev devrait quand même recevoir des données non ?

Contribution le : 05/07/2005 13:08
Créer un fichier PDF de la contribution Imprimer


Re: Socket <---> PHP : problème
Utilisateur WDF
Inscrit:
04/02/2005 12:35
Post(s): 69
Le double post en anonyme c'était moi désolé.

J'ai trouvé une solution, en respectant la norme Windev et non standard.
j'ai donc envoyé mon information comme ceci

fputs($canal,"4\r\ntoto");

donc longeur de la chaine suivi de \r\n et ensuite la chaine de caractères à envoyer

Voilà en espérant que cela aide

Contribution le : 05/07/2005 14:38
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2