begin process at 2012 05 30 23:21:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Réseau & Internet

 > 

Autre

 > 

Entree standard sur script PHP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Entree standard sur script PHP

mardi 3 février 2009 à 18:11:21 | Entree standard sur script PHP

Romain_cim

Bonjour à tous,

J'ai developpé une API (qui est plus un web service en fait) qu'un de nos client utilise comme ceci : le client envoie une requete au format xml en ecrivant sur l'entree standard de mon script. Mon script lit la requete de cette mannière :
    $fp = fopen("php://input", 'r');
    while(false!==($line = fgets($fp)))
      $xml_request.=$line;
  }
Ensuite le script traite la demande et effecture un simple echo de la reponse.
Jusqu'ici tout va bien.

Je voudrais redevelopper le meme type d'application pour un autre client et je dois donc leur envoyer une doc leur indiquant comment communiquer avec notre appli. Le probleme c'est que je n'ai aucune idee de comment on fait pour parvenir a ecrire sur l'entree standard de mon script... J'ai bien essayé avec fsocken mais il envoie des paramètres POST ou GET.

Quelqu'un peut-il éclairer ma lanterne? Je commence a surchauffer

Merci d'avance

 

mardi 3 février 2009 à 18:58:42 | Re : Entree standard sur script PHP

TychoBrahe

Salut,

Pour écrire sur l'entrée standard il te suffit simplement de lancer le script avec une console, rien de compliqué.

Sinon juste une petite remarque, ouvrir php://input n'est pas recommandé, il est préférable d'utiliser la constante STDIN (pas besoin de faire un open dessus).
mardi 3 février 2009 à 19:38:06 | Re : Entree standard sur script PHP

kohntark

Membre Club
Salut,


Heu ... ça serait plutôt php://stdout non ? (je n'ai aucune idee de comment on fait pour parvenir a ecrire sur l'entree standard de mon script) ... menfin je comprends peut être à l'envers.
Tu devrais donner un peu plus d'infos sur la fonctionnalité de ton script et la manière dont la com se passe (protocole, etc ...), car là c'est un peu juste.

mais il envoie des paramètres POST ou GET
??? les sockets envoient ce que tu veux, non ?

Cordialement,

Kohntark -

mardi 3 février 2009 à 19:53:04 | Re : Entree standard sur script PHP

TychoBrahe

@kohntark : non c'est bien l'entrée standard. Le but ici est que le script récupère ce qui est écrit dessus, d'où l'utilisation du fgets().
mardi 3 février 2009 à 20:21:50 | Re : Entree standard sur script PHP

kohntark

Membre Club
@TychoBrahe :
Je ne vais pas polémiquer mais il y a 2 manières de l'entendre, je prenais en compte "Je voudrais redevelopper le meme type d'application", "aucune idee de comment on fait pour parvenir a ecrire sur l'entree standard de mon script"

Romain nous dira ...

Bonne soirée,


Kohntark -

mercredi 4 février 2009 à 11:08:03 | Re : Entree standard sur script PHP

Romain_cim

Merci pour vos réponses.
@kohntark: Je ne veux pas de paramètres post ou get, c'est pour cette raison que fsocket ne me convient pas.
Je crois que je ferais mieux de réexpliquer mon problème:
En fait j'ai deja le serveur qui lit l'entrée standard (que je vais modifier pour utiliser STDIN, merci TychoBrahe) mais ce que je veux faire cette fois ci, c'est développer le client qui écrit sur l'entrée standard du serveur.
Dans la précédente appli, le client a été développé par une société cliente de la la mienne. J'ai développé le serveur en m'adaptant a leur demande. Aujourd'hui, comme ce processus fonctionne bien, nous voudrions le remettre en place pour une autre société cliente. Je dois donc fournir à cette nouvelle société une doc indiquant comment développer leur client. C'est ici que je coince car je n'arrive a développer un client qui écrive sur l'entrée standard du serveur.
@TychoBrahe : j'ai essayé ceci en ligne de commande sous unix:
cat requete.xml | php mon_serveur.php
dans mon_serveur.php je fais un echo de STDIN mais ca n'affiche que : Resource id #1
et avec fopen("php://input", 'r') et fget je ne recois rien.

J'espere que ma demande est plus claire, et merci encore a vous deux

 

mercredi 4 février 2009 à 12:39:10 | Re : Entree standard sur script PHP

Romain_cim

@TychoBrahe : je viens de comprendre qu'un echo de STDIN ne marche et qu'il faut utiliser fgets(STDIN) et alors ca fonctionne, je recupere ma requete dans mon serveur avec la methode en ligne de commande.

Ma question maintenant serait de savoir comment un script sur une machine differente peut ecrire sur l'entree standard de mon serveur??

 

mercredi 4 février 2009 à 13:10:26 | Re : Entree standard sur script PHP

TychoBrahe

Pour écrire sur l'entrée standard tu peux tenter un fprintf(STDIN, "Message"), m'enfin c'est vraiment très porc et ne devrais fonctionner que si le client et le serveur se situent sur la même machine. Une solution serai, au lancement du logiciel serveur, de rediriger l'entrée standard de ce dernier sur un autre fichier dans lequel va écrire le client (vive les sockets).
mercredi 4 février 2009 à 13:22:21 | Re : Entree standard sur script PHP

Romain_cim

Merci TychoBrahe. Je crois que je vais réfléchir à une méthode complètement différente parce que celle ci n'a pas l'air de rentrer dans les usages standard.
Je n'osais pas contacter notre client (société) qui a développer le client (script) qui écrit sur l'entrée standard de mon serveur, pour ne pas nous discréditer vis a vis d'eux, mais je crois que je vais le faire pour savoir comment ils font parce que ca m'intrigue quand meme. Je posterai leur réponse si elle est satisfaisante.

En tout cas merci beaucoup

 



Cette discussion est classée dans : script, php, client, standard, entree


Répondre à ce message

Sujets en rapport avec ce message

question php javascript... [ par joduak ] Salut à vous! Alors je pésente la situation... J'ai un formulaire et lorsque le client a fini sa saisie dans un textbox (onblur), par exemple un nomb adresse mac [ par Ce.plusplus ] Bonjour,  je ne m'y connais pas du tout en php, mais j'ai vu en faisant quelques recherches qu'il etait existait des scripts permettant d'afficher l'a Aide pour un script php [ par kevin54000 ] Bonjour a tous ! Voila j'explique ce que je voudrais que le script réalise : -En ayant entré un nom de client ou un bout de nom dans un formulaire, Ecrire un script php pour visualiser les tables de ma base de donnés sous postgres [ par batche ] Bonjour,Je suis nouveau en programmation PHP mais je me suis lancé dans le développement d'un planning informatisé. J'ai configuré un serveur easyphp Cherche script PHP mail avec pièce jointe [ par bydouille ] Bonjour,Cela fait 4 jours que je galère,J'ai cherché, cherché... mais aucun des bouts de codesque j'ai trouvés ne fonctionnent !Je cherche un script s fermmer une page php avec codes php [ par sbsouba ] slut  a tous je veux savoir s'il ya un code ou script php qui fermmer une page  en php voila mon code sources<? $rep8=mysql_query("select * from archi Problème insertion dans base mysql [ par Darm ] Bonjour, Avant toutes choses, je tient à préciser que je suis débutant en mysql et php. Je vient de monter un serveur web perso sur une vieille beca recherche script PHP [ par matthieugoua ] bonjour a tous je viens vous voir car je suis actuellement a la racherche d'un script php qui aurait pour fonction de me donner en sortie ce code<img PHP5 et SOAP. Probleme namespace [ par Soulant ] Bonjour,J'essaie de créer un client SOAP en PHP, mais j'ai des problêmes avec les namespaces.En effet, un client créé en C# envoie une un message comm Detection Fin Script PHP [ par DCWeb ] Bonjour,Est il possible de detecter la fin d'un script afin d'executer une fonctionMerci de vos réponses


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,889 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales