-
"streaming" de données
Bonjour, alors voilà, j'ai suivi le tuto sur les socket php afin de réaliser un serveur pour établir de l'échange de donnée en temps réel entre les différents utilisateurs de mon site.
Jusque la tout va bien, ça fonctionne bien.
Mais maintenant j'aimerais traiter ces donnée différemment, dans le tutoriel on ouvre une page du genre :
ip:port?Pseudo=pseudo
Mon site traite les données via javascript, des fonctions qui gère tout ce qui est reçu.
J'ai alors essayé de faire communiquer les données reçus du serveur en exécutant des fonctions de la page parent. ou en envoyant dans un container de la page parent un script exécutant ces fonctions.
Cela marche très bien avec une page statique, mais pas quand cela vient du serveur.
Autre solution que j'ai testé, la connexion en ajax avec jquery, j'ouvre la page ip:port?pseudo=... tout marche le serveur reçoit et connecte le membre puis erreur connexion entre les 2 coupées.
J'ai pensé passer par php, mais je pense le résultat serait le même ?
J’obtiens le résultat, php renvois, javascript gère les données reçu, et relance la connexion a la page php, mais les données envoyer entre temps son perdu...
Donc si l'utilisateur a pas une connexion extra...
J'ai aussi vu qu'il y avait moyen de passer par flash, mais j'aimerais évité afin de rendre le site utilisable même si l'utilisateur ne possède pas flash.
Avait vous des idées ? des conseils ? afin de me permettre de résoudre mon problème ?
Je vous remercie d'avance.
-
Tu dois comprendre que dans une conversation client serveur, c'est toujours le client qui initie la demande. php ne peut que répondre à une requête du client.
En aucun cas tu ne peux envoyer des données de force sur le client.
-
Apparemment, c'est possible.
Pour le moment j'ouvre ma page et la page ne reçois du contenu que quand le serveur en a pour elle.
Et elle n'est pas actualisé en permanence, pourtant, dés que j'envois une donnée, celui ci l'affiche immédiatement.
Il y a aussi APE (ajax push engine) et d'autre API qui ont un coté client qui le permette mais tout le temps adaptée à leurs coté serveur.
J'ai analysé leur code et apparemment il passe par une iframe.
Mais il y a plein de complexité a cause des différents navigateur devant être utilisé différemment.
Je regarde donc tu cotées des clients TCPsocket en js...
Je suis d'accord avec toi pour une bete page php, bien qu'il y a moyen avec flush() d'envoyer les données par petite dose.
Mais avec les sockets il y a moyen de créer des serveurs ou l'on se connect, reste connecté, et le serveur renvois l'information quand il en a.
http://stephaneey.developpez.com/tutoriel/php/sockets/