IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Web en Java Discussion :

Envoyer des données en $_POST


Sujet :

Développement Web en Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 37
    Points : 29
    Points
    29
    Par défaut Envoyer des données en $_POST
    Bonjour,

    Je suis en train de faire une applet et je souhaite envoyer des données sur une page php via la méthode $_POST.
    Je voudrais donc que, par exemple, lorsque je clic sur un bouton, ça m'ouvre une page php qui récupère les données envoyé par l'applet.

    J'ai vu cette méthode dans la faq :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    public void doPost(String adresse){
       OutputStreamWriter writer = null;
       BufferedReader reader = null;
       try {
         //encodage des paramètres de la requête
          String donnees = URLEncoder.encode("clef", "UTF-8")+
                            "="+URLEncoder.encode("valeur", "UTF-8");
          donnees += "&"+URLEncoder.encode("autreClef", "UTF-8")+
                            "=" + URLEncoder.encode("autreValeur", "UTF-8");
     
          //création de la connection
          URL url = new URL(adresse);
          URLConnection conn = url.openConnection();
          conn.setDoOutput(true);
     
          //envoi de la requête
          writer = new OutputStreamWriter(conn.getOutputStream());
          writer.write(donnees);
          writer.flush();
     
          //lecture de la réponse
          reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
          String ligne;
          while ((ligne = reader.readLine()) != null) {
             System.out.println(ligne);
          }
       }catch (Exception e) {
          e.printStackTrace();
       }finally{
          try{writer.close();}catch(Exception e){}
          try{reader.close();}catch(Exception e){}
       }
    }
    Mais cette méthode me renvoie le code source de la page sans rien ouvrir...
    Alors j'ai peut être pas bien compris mais je pense que je peux m'appuyer sur cette méthode pour envoyer des données, là j'ai l'impression que je ne fais que les recevoir.
    Comme je ne sais pas comment faire, j'en fais appel à vous

    Merci.

  2. #2
    Invité(e)
    Invité(e)
    Par défaut
    Jette un coup d'œil à la librairie httpclient elle est plus simple à utiliser.
    Moi j'ai réussi comme ça en postant un fichier + des paramètres seul truc c'est que je récupérer en asp mais c'est aussi possible en php va voir sur mon post : http://www.developpez.net/forums/sho...d.php?t=561871

  3. #3
    Invité(e)
    Invité(e)
    Par défaut
    Correction car la méthode que j'utilisai avant est dépréciée je te met tout le code tu feras le tri :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
     /* ---------------------- ENVOI EN POST ------------------------
    		    --------------------------------------------------------------  */
    		 PostMethod filePost = new PostMethod(maPageUpload);
     
             try {
                 appendMessage("Uploading " + fileWrite.getName() + " to " + maPageUpload);
     
                 // Ajout du fichier
                 Part[] parts = {new FilePart("monFichier", fileWrite)};
                 filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams()));
     
                 	// Variable avec nom du fichier + variable à crypter
                 	String nomFichier = fileWrite.getName();
    	        	String chaineAlea = variableCrypter();
    	        	// Creation des clé => valeur pour les parametres
    				NameValuePair nomFichierNV = new NameValuePair("nomFichier", nomFichier);
    				NameValuePair repertoireImageNV = new NameValuePair("varsession", varsession);
    				NameValuePair verifNV = new NameValuePair("verif", chaineAlea);
    				NameValuePair photo_openerNV = new NameValuePair("photo_opener", photo_opener);
    				String[] separer = extension.split("\\.");
    				extensionSansPoint = separer[1];
    				//System.out.println("java ext: "+extensionSansPoint);
    				NameValuePair extensionNV = new NameValuePair("extension", extensionSansPoint);
    				NameValuePair[] parametresPourASP = { nomFichierNV, repertoireImageNV, verifNV, photo_openerNV, extensionNV }; 
    			// Ajout de tout les parametres
                 filePost.setQueryString(parametresPourASP);
                 HttpClient client = new HttpClient();
                 client.getHttpConnectionManager().getParams().setConnectionTimeout(15000);
     
    		        try {
    		        	// On execute la methode POST et on recupere son statut (envoi)
    		        	int statusCode1 = client.executeMethod(filePost);
     
    					if (statusCode1 == HttpStatus.SC_OK) {
    						// Reponse de la page appelée
    						String reponse = filePost.getResponseBodyAsString();
    	                    appendMessage("Upload complete, response=" + reponse);
    						if (reponse.equals("OK")){
    							// Fermeture fenetre telechargement + affichage message OK
    							cadre.dispose();
    							fenOK();
    						}
    						else{
    							//Fermeture fenetre telechargement + affichage message Erreur
    							cadre.dispose();
    							fenPb("Problème dans la récupèration ASP (variable de sécurité non valide)\n Reponse: "+reponse);
    						}
    	                } else {
    	                	//Fermeture fenetre telechargement + affichage message erreur
    	                	cadre.dispose();
    	                	appendMessage("Upload failed, response=" + HttpStatus.getStatusText(statusCode1) + "   "+filePost.getResponseBodyAsString());
    	                	fenPb("Erreur de transfert, reponse=" + HttpStatus.getStatusText(statusCode1) + "   "+filePost.getResponseBodyAsString());			                	
    	                }
     
    				} catch (HttpException e) {
    					System.out.println("BoutonEnregistrer.EnvoiPost.HttpException "+e);
    				} catch (IOException e) {
    					System.out.println("BoutonEnregistrer.EnvoiPost.IOException "+e);
    				}
    				System.out.println("statusLine>>>" + filePost.getStatusLine());
             } catch (Exception ex) {
                 appendMessage("ERROR: " + ex.getClass().getName() + " "+ ex.getMessage());
                 ex.printStackTrace();
             } finally {
            	 // On ferme la connexion
                 filePost.releaseConnection();
             }
     
     
    		   /*---------------------- FIN DE ENVOI EN POST ------------------------
    		    -------------------------------------------------------------- */

Discussions similaires

  1. envoyer des données par mail
    Par zorba49 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/12/2005, 11h00
  2. Envoyer des données mysql vers Excel
    Par thierry198 dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 09/11/2005, 19h59
  3. atteindre un ancre en envoyant des données
    Par adilou1981 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 29/03/2005, 11h59
  4. envoyer des données par l'intermédiaire d'un bouton
    Par mathilde50 dans le forum Access
    Réponses: 26
    Dernier message: 28/10/2004, 16h49
  5. [socket] envoyer des données vers un port com
    Par Slimer dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 20/07/2004, 17h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo