Transfert de données

Résolu
linus06vl Messages postés 61 Statut Membre -  
sebsauvage Messages postés 33415 Statut Modérateur -
Bonjour,

Est-il possible de transférer par internet, une idonnée calculée par un logiciel, vers un autre PC.

Merci pour vos réponses

Alain
A voir également:

9 réponses

sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
oh oui... tu le fais constamment avec ton navigateur avec HTTP.

https://www.google.com/?q=toto&gws_rd=ssl

Là tu envoie toto à google.

Il y a plein d'autres moyens (ftp, ssh, xml-rpc...)
0
linus06vl Messages postés 61 Statut Membre
 
Bonsoir Seb,

Tu as l'air de bien t'y connaitre et avec ton accord, j'aimerai profiter de ta science.

Supposons un logiciel qui calcul une valeur "x" et met cette valeur dans la case d'un tableau.
Quelle est la procédure pour envoyer le contenu de cette case vers un ou plusieurs PC distant du 1er.

Merci pour ton aide

Alain
0
sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
On peut imaginer que le PC qui a fini le calcul l'envoi à un autre avec une requête HTTP:

http://serveur/resultat?x=5&y=8&valeur=523

Le serveur recevra cette requête HTTP, et saura qu'il faut mettre 523 dans la colonne 5, ligne 8.
Il faut juste installer un serveur web, et mettre un programme (resultat) qui traitera les valeurs reçues.

Mais on peut procéder d'autres façons, avec du XML-RPC (webservices), par exemple en Python:
https://sebsauvage.net/python/snyppets/index.html#xmlrpc

Dans ce cas, la machine qui a fini le calcul ferai simplement quelquechose du genre:
server = xmlrpclib.ServerProxy("http://serveur/")
server.resultat(x=5,y=8,valeur=523)



On peut aussi utiliser des frameworks (couches logicielles) qui s'occupent de répartir automatiquement les calculs sur plusieurs machine, comme par exemple http://discoproject.org/
0
ithaque Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   88
 
dans le premier cas en envoyant l'info au serveur par requete HTTP, 2 questions :
- comment on fait alors, une fois que le serveur a reçu l'info, pour que les pc aillent récupérer cette info ?
- question un peu con, mais comment installe t on un serveur web ? c'est juste du stockage des données sur un hébergeur ?
0
sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
- comment on fait alors, une fois que le serveur a reçu l'info, pour que les pc aillent récupérer cette info ?

Tu peux très bien mettre une autre URL sur le même serveur pour servir ces résultats aux autres PC.


question un peu con, mais comment installe t on un serveur web ? c'est juste du stockage des données sur un hébergeur ?

Un serveur web c'est un logiciel (apache ou autre). Tu peux utiliser celui de ton hébergeur, ou bien un installé sur ton ordinateur.

Ensuite, il faut programmer pour créer les programmer qui vont recevoir les données et les stocker.
Par exemple en php (qui est très répandu chez les hébergeurs).
http://www.commentcamarche.net/faq/sujet 94 php page doc et tutoriaux officiels
0
ithaque Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   88
 
pour le programme, je l'ai déjà

on a en fait développé de petits logiciels avec windev qu'on voudrait maintenant mettre en réseau
et ainsi s'envoyer des info entre les différents utilisateurs
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
Je ne connais pas bien WinDev, mais je suis persuadé qu'ils ont ce qu'il faut pour la communication réseau.
--> voir dans les docs.
Ceci dit, un webservice ou même un simple serveur web peut parfaitement faire l'affaire pour l'échange de données.

Mais quel est le besoin exactement ?
échange de fichiers ? planning ? signalement évènement ? chat ?
0
ithaque Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   88
 
je dirai échanges de données (variables de type entier et booleen)

l'application gère de nombreuses variables, et il faudrait pour améliorer encore l'appli, que 5-10 variables de chaque utilisateur soient connues des autres

et donc je voudrai que tres régulièrement (toutes les 10 sec par exemple), chaque application de chaque utilisateur envoie aux autres utilisateurs ces 5-10 variables afin qu'ils en prennent connaissance
Apres, je ne sais pas si c'est important mais on oscille entre 4 et 7 utilisateurs, donc il faudrait mettre au maxi les 7 "en réseau"

je regardearai sinon dans l'aide de windev....
mais c'est que sur windev je n'ai développé que de petits programmes, et jamais fait de réseau, donc je me renseigne avant....
0
sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
Je vois.

Un serveur web fera très bien l'affaire, surtout qu'il n'y a pas beaucoup de clients.

J'imagine donc deux pages web (en php ou autre):

/enregistre.php?user=toto&variable=titi&valeur=53

Chaque poste envoie la valeur d'une de ses variables au serveur, et le serveur les mémorise.
(là il mémorise tiiti=53 pour l'utilisateur toto)

/liste.php
Affiche toutes les variables des différents utilisateurs.
Les cilents viennent régulièrement récupérer cette liste.


Ceci dit, ma solution marche mais elle est très basique.
Il existe des protocoles spécialisés dans la diffusion d'informations réseaux (XMPP, multicast, etc.).
0
ithaque Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   88
 
ok je commence à saisir
une solution tres basique me convient car ca me permet de comprendre :D

et pour la récupération, je comprends pas trop la page web "liste.php"...
car à la rigueur, sur la page web sont affichées toutes les données, mais comment les récupérer ?
n'est il pas possible de lire la valeur avec une fonction analogue à l'enregistrement
(avoir "lire" à la place d'"enregistre" par exemple)
0
sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
je comprends pas trop la page web "liste.php"..

Le serveur a mémorisé toutes les données.
Chaque client doit pouvoir lire les valeurs stockées sur le serveur.

Cette page pourrait resservrir toutes les valeurs:

toto: titi=53 tutu=25
Janine: titi=24 tutu=78 vava=775
etc.

Les différents clients peuvent venir chercher toutes les 10 secondes les données renvoyées par liste.php.


n'est il pas possible de lire la valeur avec une fonction analogue à l'enregistrement
(avoir "lire" à la place d'"enregistre" par exemple)


tout à fait !
On peut très bien imaginer une page qui permette de lire une seule valeur d'un seul utilisateur:
/lisvaleur.php?user=toto&variable=titi
qui renverrait 53
0
ithaque Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   88
 
oui ca "renverrait" le 53,
mais mon pb c'est que comment mettre cette valeur dans l'appli ?

car j'ai bien compris la premiere partie d'enregistrement des varaibles sur une page php...
maintenant, faut se pencher sur la récupération de ces variables :s
0
sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
mais mon pb c'est que comment mettre cette valeur dans l'appli ?

Ah ben c'est toi qui développe: tu stock comment tes données ?
Dans des fichiers, des bases de données ?
0
ithaque Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   88
 
oui c'est moi qui développe mon appli :)

mais j'ai trouvé :
- pour envoyer les variables, je fais comme tu as dit
- pour les récupérer, j'envoie une requette sur une autre page .php qui me renvoie un résultat
et c'est ce résultat qui contient toutes les variables ^^

donc a priori, ca marche, on a fait qq tests avec une appli toute simple à 2 user et 2 variables
je vais continuer, et si besoin je reviens ;)

sinon pour répondre à tes questions, mes données dans l'appli ce sont des variables qui sont stockees dans la memoire de l'appli, et quand on l'arrete, elle enregistre tout dans un .xml

merci de ton aide qui a été un bon point de départ ;)
0
sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
De rien :-)
0