Echange de fichiers directement de pc à pc

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Echange de fichiers directement de pc à pc

par Sékiltoyai » 15 avr. 2009, 22:56

"Non, mais détrompe toi, je connais très bien PHP."
=>
Je me suis mal fait comprendre :)
quand je dis "Je ne vais rien t'apprendre" il n'y a aucun ton ironique.
Tu sais, je suis tout "neuf" ici (viens de m'inscrire), et je ne suis pas de ceux qui vont se la péter et arriver en terrain conquis.
Tu es sans doute plus "calé" que moi, mais nous ne sommes pas là pour faire la course au plus balèze, d'autant plus que certaines réponses/solutions données par des débutants sont régulièrement plus pertinentes que celles des "anciens".

En résumé nous sommes tout deux d'accord :
PHP n'est pas le plus adapté pour réaliser certains projets, mais il en est capable !!
(c'était le but de mon post)

:D cette phrase finale te convient t elle ?

@+,


Kohntark-
J'avais bien compris en fait, j'ai juste un peu exagéré :D
Non, nous sommes tout à fait d'accord :D

par Kohntark » 15 avr. 2009, 22:37

"Non, mais détrompe toi, je connais très bien PHP."
=>
Je me suis mal fait comprendre :)
quand je dis "Je ne vais rien t'apprendre" il n'y a aucun ton ironique.
Tu sais, je suis tout "neuf" ici (viens de m'inscrire), et je ne suis pas de ceux qui vont se la péter et arriver en terrain conquis.
Tu es sans doute plus "calé" que moi, mais nous ne sommes pas là pour faire la course au plus balèze, d'autant plus que certaines réponses/solutions données par des débutants sont régulièrement plus pertinentes que celles des "anciens".

En résumé nous sommes tout deux d'accord :
PHP n'est pas le plus adapté pour réaliser certains projets, mais il en est capable !!
(c'était le but de mon post)

:D cette phrase finale te convient t elle ?

@+,


Kohntark-

par Sékiltoyai » 15 avr. 2009, 22:05

Non, mais détrompe toi, je connais très bien PHP.
Tu as en effet des extensions QT ou GTK pour faire des interfaces graphiques. Tu as les pcntl qui te permettent d'avoir quasiment les mêmes contrôles sur son exécution que tout autre programme, donc de faire des serveurs ou des applications en relation avec le réseau. Tu peux exécuter un script PHP en CLI donc hors de toute plateforme Web.
Mais :
Après on peut les détourner de leur but premier, mais c'est qu'on n'a pas compris la philosophie intrinsèque de ces langages.
:)
Voilà, c'est tiout :)

par Kohntark » 15 avr. 2009, 21:52

Re Sékiltoyai,

Bon, je ne vais pas entrer dans la guéguerre des langages, surtout que je ne connais pas java, mais réduire PHP au web pur est à mon avis une erreur. Il est évident, ne serait ce que par la relative lenteur de son côté interprété, qu'il n'est pas le plus performant partout ... comme tous les langages.

Je me répète encore (et tu ne dis pas le contraire dans ton dernier message), mais quand je vois :
"je ne pense pas que le PHP pur te le permette [...] Il faut qu'un serveur soit présent sur le poste émetteur pour pouvoir envoyer un fichier"
"Soit d'héberger un démon, qui sera naturellement codé en autre chose qu'en PHP"
"Installation de php sur les clients ? [...] Tu plaisantes j'espère ? :-/ "
etc ...

=> ça laisse entendre, quand ça n'est pas clairement explicite, que PHP n'est pas capable de répondre à ces besoins, hors il peut répondre à tous ceux qui ont été exposés.

Je ne vais rien t'apprendre :
Répondre au besoin de Vivi ? PHP est sans doute le plus adapté, moyennant l'autorisation de stocker "un peu" sur le serveur
Un démon ? J'en ai 3/4 qui tournent niquel
Un P2P ? je n'ai jamais fais mais pas le moindre doute sur ses capacités
De la domotique ? Toute ma maison tourne avec PHP, et aucun pb, au contraire !!!
...

Je re re re re re : PHP n'est pas le plus adapté pour certaines fonctionnalités, mais il est capable de répondre à une majorité de besoins, bien au delà du web.

Cordialement,


Kohntark-

re:échange de pc à pc précision

par vivi » 15 avr. 2009, 21:37

Bonjour ,
Merci à tous pour vos réponses .
je précises quelques détails :
1-tout le monde ne possède pas un Pc avec windows , donc il faut que le 'processus' soit multiplateforme donc mauvaise idée à mon avis de faire des .exe à installer au préalable
2-Peut importe en fait l'espace disk disponible pour le site (j'ai en tout 250Mo+Mysql+php) le problème est d'éviter les 'déchets' c'est à dire des fichiers qui ne servent qu'à deux personnes seulement.
3-Disons que pour eviter d'inciter les echanges pirates on limitera la taille des fichiers (à décider)
4-je connais un site www.weezo.net pour ne pas le citer qui reprend un peut l'esprit de ce que je veux faire :
l'utilisateur A place dans une fenètre sur son bureau tout ce qu'il estime vouloir partager et l'utilisateur B peut les récupérer à condition que les deux soient connectés en même temps.

par Sékiltoyai » 15 avr. 2009, 14:15

Je vois pas le rapport et non java est pas fait pour ca, java à la base c'est fait pour la domotique pas pour les ordinateurs si on veut parler de "fait pour", ensuite si c'est idiot d'avoir implémenté GTK dans php c'est aussi idiot d'avoir implémenté mysql, ldap , fopen, en fait php c'est idiot tout court selon ton raisonement, on pourrait le faire en cgi, en perl, mais bon perl c'est stupide aussi on pourrait le faire en c, en fait le cgi c'est stupide on à qu'à pas faire de site webs...
Java a été développé pour la domotique, mais est désormais parfaitement adapté à des programmes non-embarqués. Il possède une logique objet forte, indispensable à tout gros projet, est multiplateforme, relativement performant, avec une bonne intéraction avec le système. Mais sa lourdeur le rend inopérationnel pour du développement de serveurs, ou de sites web (même si beaucoup l'utilisent dans ce cadre).
PHP a été développé initialement pour faire des formulaires améliorés, mais est désormais parfaitement adapté pour faire des applications web. Sa légèreté, sa maniabilité, et son interaction avec les serveurs http en font un outil complètement intégré et adapté au milieu du web. Ses extensions ldap, fopen lui donnent des fonctionnalités supplémentaires pour accomplir sa mission. Mais sa nature de script, et sa forte spécialisation dans le web, en font un candidat trop faible pour des applications standalone.
Plus particulièrement, Java est lourd, et est donc fait pour se charger une fois et rester chargé pendant un certain temps. PHP est léger et est spécialement conçu pour des exécutions de l'ordre de la seconde.
Après on peut les détourner de leur but premier, mais c'est qu'on n'a pas compris la philosophie intrinsèque de ces langages.
:)

par Nagol » 15 avr. 2009, 12:09

Cela étant je ne plaisante pas. Quelque soit la solution tu devras installer un soft, après, que ce soit du java ou du PHP/GTK ...
Ouais mais bon, PHP pour du standalone c'est vraiment pas adapté. C'est n'importe quoi d'avoir implémenté la gestion des librairies graphiques en PHP. Java, au moins, est fait pour ça, et est installé sur la grosse majorité des machines…
Je vois pas le rapport et non java est pas fait pour ca, java à la base c'est fait pour la domotique pas pour les ordinateurs si on veut parler de "fait pour", ensuite si c'est idiot d'avoir implémenté GTK dans php c'est aussi idiot d'avoir implémenté mysql, ldap , fopen, en fait php c'est idiot tout court selon ton raisonement, on pourrait le faire en cgi, en perl, mais bon perl c'est stupide aussi on pourrait le faire en c, en fait le cgi c'est stupide on à qu'à pas faire de site webs...

tsss :)

par Sékiltoyai » 15 avr. 2009, 10:58

Cela étant je ne plaisante pas. Quelque soit la solution tu devras installer un soft, après, que ce soit du java ou du PHP/GTK ...
Ouais mais bon, PHP pour du standalone c'est vraiment pas adapté. C'est n'importe quoi d'avoir implémenté la gestion des librairies graphiques en PHP. Java, au moins, est fait pour ça, et est installé sur la grosse majorité des machines…

par orgerix » 15 avr. 2009, 10:04

Et un envoie en pièce jointe par mail si les fichiers ne sont pas trop gros ?

Je ne sais pas quels sont les fichiers à envoyer, mais tant que c'est pas des images ou des vidéos, ca peux passer.

par Kohntark » 15 avr. 2009, 09:02

Salut Sékiltoyai,

Nous sommes bien d'accord, j'ai dit moi même que PHP n'était pas le plus adapté et que le développement ne serait pas si simple.
Mon intervention avait pour but de relativiser certains post qui laissaient penser que ce n'était pas possible en PHP, hors ça l'est tout à fait, même pour un P2P
Concernant ce dernier point je ne pense pas non plus que ce soit la meilleure idée. Cela étant je ne plaisante pas. Quelque soit la solution tu devras installer un soft, après, que ce soit du java ou du PHP/GTK ...

Et puis nous n'en savons pas assez sur le pb de vivi :
espace disque restreint ? 1Mo ? 1Go ? 1% de libre ? 75 % ?
quels types de documents ? des textes à 20Ko ? des videos de 700 Mo ?
...

Enfin bref, la solution dépends de la réponse à ces questions.


Cordialement,


Kohntark-

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

Re: re: échange de pc à pc

par Sékiltoyai » 14 avr. 2009, 21:29

Comme cela a été dit PHP n'est peut être pas le langage le mieux adapté pour faire cela. Néanmoins c'est tout à fait possible, à mon sens, même sur un hébergement mutualisé, et moyennant un peu de prise de tête.
Un peu…
Le client X souhaite échanger un fichier avec le client Y
les 2 sont connectés (sinon erreur)
Un message/confirmation est envoyé à Y
X envoie son fichier sur le serveur via POST. Y voit s'afficher un message d'attente.
Fin envoi fichier
Y est invité à télécharger le fichier via un simple lien (refus => suppression du fichier sur le serveur)
Téléchargement du fichier terminé par Y
Du coup, il y a quand même stockage sur le serveur, et ça demande un développement lourd en PHP et Javascript. A ce moment, autant faire un upload simple avec un timeout des fichiers sur le serveur du même ordre que la session (5, 10 minutes), c'est presque aussi efficace, et il y a des chances que cela existe déjà…
Sans même passer par un démon (php ou autre) tu pourrais développer une petite appli qui, moyennant une install très simple de php sur les machines (dans ton cas ça pourrait être envisageable) permettrait de dialoguer en réel P2P.
Installation de php sur les clients ? En plus pour faire des programmes standalone ? Tu plaisantes j'espère ? :-/
A la limite, on pourraît envisager un programme en java, pour que ce soit multiplateforme, à la limite sous forme d'applet pour que ce soit simple à exécuter (et encore, je ne sais pas si les applets java ont accès au disque dur), mais là c'est du bon développement réseau comme on aime (enfin moi j'adore :P). :)

Mouais, je ne suis vraiment pas convaincu par tes solutions Kohntark. Le mieux, ce serait vraiment d'autoriser aux utilisateurs de stocker des fichiers sur ton hébergement…

Cordialement,

Kohntark-[/quote]

re: échange de pc à pc

par Kohntark » 14 avr. 2009, 20:55

Salut,

Comme cela a été dit PHP n'est peut être pas le langage le mieux adapté pour faire cela. Néanmoins c'est tout à fait possible, à mon sens, même sur un hébergement mutualisé, et moyennant un peu de prise de tête.

A la louche :
Chaque client est identifié par un id

Le client X souhaite échanger un fichier avec le client Y
les 2 sont connectés (sinon erreur)
Un message/confirmation est envoyé à Y
X envoie son fichier sur le serveur via POST. Y voit s'afficher un message d'attente.
Fin envoi fichier
Y est invité à télécharger le fichier via un simple lien (refus => suppression du fichier sur le serveur)
Téléchargement du fichier terminé par Y

Ce ne sont bien sur que les grandes lignes mais l'esprit est là.

Tu pourrais très bien permettre une certaine tolérance quant au stockage sur le serveur, selon l'espace restant par exemple, la conservation des fichiers pendant 4/7 jours.

Sans même passer par un démon (php ou autre) tu pourrais développer une petite appli qui, moyennant une install très simple de php sur les machines (dans ton cas ça pourrait être envisageable) permettrait de dialoguer en réel P2P.

Cordialement,

Kohntark-

par naholyr » 13 avr. 2009, 23:37

Tu peux toujours te raccrocher à du "semi temps réel" : un utilisateur dépose un fichier pour un autre utilisateur, tu stockes ce fichier sur le serveur, et de temps en temps (genre aléatoirement au début de index.php) tu supprimes tous les fichiers stockés depuis plus de X minutes.

par jojolapine » 13 avr. 2009, 22:54

Et du coup tant qu'a faire d'avoir un serveur dédié... autant stocker les fichiers sur le serveur et ne pas se prendre la tête avec des systèmes foireux... D'autant plus que des échanges de documents c'est pas non plus de la vidéo, de la photo... ça va pas aller chercher très loins ;)

Re: re:échange de pc à pc

par Sékiltoyai » 13 avr. 2009, 19:55

je possède un site de mutualisation des maths et un espace disk restreint de stockage ,donc pour ne pas saturer cet espace je pensais qu'en permettant aux profs d'echanger directement entre eux en trnsitant par mon site cela pourait rendre service.
Donc je suppose que tu as songé au fonctionnement. Tu comprends que les deux utilisateurs doivent être exactement en même temps sur le site et l'envoyeur effectuer l'envoi en même temps que receveur le recevoir ? De même pendant tout le temps de l'envoi les deux utilisateurs doivent être connectés.
Enfin il te faut un hébergement très très laxiste sur le plan de la sécurité, qui t'autorise :
- Soit d'héberger un script qui ouvre des connexions réseau supplémentaires et qui a un temps d'exécution illimité, donc à utiliser aussi une part non négligeable du processeur. Mais si déjà t'es limité au niveau de l'espace j'en doute.
- Soit d'héberger un démon, qui sera naturellement codé en autre chose qu'en PHP, et qui sera évidemment (c'est un démon quoi) exécuté en permanence. Mais si déjà t'es limité au niveau de l'espace j'en doute.
En gros il te faut un serveur dédié…