Applet, création et téléchargement de fichier sur le serveur d'origine

darfeuille Messages postés 63 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 25 juillet 2005 - 22 juil. 2005 à 09:09
zouzou46 Messages postés 17 Date d'inscription dimanche 6 juin 2004 Statut Membre Dernière intervention 21 décembre 2009 - 2 sept. 2005 à 00:44
Bonjour,



je vous explique mon problème : j'ai développé une applet java
(s'intégrant dans un intranet)permettant d'explorer des données sous
forme graphique et d'effectuer des sélections sur celles-ci. Le but
final et de récupérer des données sur la sélection effectuée. Pour
celà, je dois proposer le téléchargement d'un fichier contenant ces
données. Actuellement, la seule solution que j'ai trouvée est la
suivante :



1/ J'envoie mes données à une page php dans une requête de type POST :



URL url = new URL(getCodeBase()+"appletresults.php");

URLConnection conn = url.openConnection();

conn.setDoOutput(true);



writer = new OutputStreamWriter(conn.getOutputStream());

writer.write(donnees);

writer.flush();


2/ Je recupere la page php afin qu'il l'interprète (et donc qu'il crée le fichier) :



reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));

String ligne;

while ((ligne = reader.readLine()) != null)

{

System.out.println(ligne);

}



3/ je demande l'affichage d'une autre page qui propose le téléchargement de ce fichier :



getAppletContext().showDocument(new URL(getCodeBase()+"appletdownload.php"));



Cette solution marche. Toutefois, ce qui me gène fortement, c'est
d'utiliser 2 pages php différentes, une pour la création du fichier,
une pour son téléchargement. c'est pourquoi je voudrais savoir
s'il existe une solution permettant de tout faire dans une seule page
php (ou de créer un fichier "virtuel" sur le poste client et de
permettre son dl, ou toute autre solution).



En résumé, existe t'il un moyen simple, a partir d'une applet, de créer un fichier et de proposer son téléchargement?







PS : j'ai essayé de mettre création et téléchargement dans une même page php, mais le problème est le suivant :

- si j'utilise showDocument, il ne me crée pas le fichier (problème de droit, de POST???)

- si j'utilise la première méthode (BufferedReader), il ne me propose pas le téléchargement.



PS2 : la page PHP récupère des variables de session afin de connaitre
l'utilisateur pour ecrire le fichier dans un répertoire auquel il a
accès



J'espère avoir été a peu près clair, et merci d'avance



Darfeuille

3 réponses

darfeuille Messages postés 63 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 25 juillet 2005
22 juil. 2005 à 09:17
précision : si j'essaie de créer le fichier par un appel de la page php
via showDocument(), la page arrive a créer le fichier, a écrire dedans
un mot ou un autre et à proposer son téléchargement ; le seul problème
est qu'elle n'arrive pas a lire le POST envoyé auparavant (donc les
données à écrire). Donc si quelqu'un sait ou peut être le problème avec
le POST, ca résoudrait tous mes problème.



En vous remerciant, Darfeuille
0
zouzou46 Messages postés 17 Date d'inscription dimanche 6 juin 2004 Statut Membre Dernière intervention 21 décembre 2009
2 sept. 2005 à 00:38
Bonjour,

J'essaye de faire à peu près la même chose, mais je suis aussi nul en java qu'expérimenté en php ...

J'aimerais développer une application qui me permettrait de transférer, à partir de n'importe quelle machine, des fichiers locaux à mon serveur distant (Apache/php/MySql).


L'application en question tournerait dans un navigateur quelconque, sur un OS quelconque, et permettrait de sélectionner sur le disque dur local des fichiers à envoyer à mon serveur.


On pourrait collaborer ?
0
zouzou46 Messages postés 17 Date d'inscription dimanche 6 juin 2004 Statut Membre Dernière intervention 21 décembre 2009
2 sept. 2005 à 00:44
Bonjour,

J'essaye de faire à peu près la même chose, mais je suis aussi nul en java qu'à peu près expérimenté en php ...

J'aimerais développer une application qui me permettrait de transférer, à partir de n'importe quelle machine, des fichiers locaux à mon serveur distant (Apache/php/MySql) en https ou sftp


L'application en question tournerait dans un navigateur quelconque, sur un OS quelconque, et permettrait de sélectionner sur le disque dur local des fichiers à envoyer à mon serveur.


Vous auriez des tuyaux pour moi ?
0
Rejoignez-nous