JAVA et Php

Résolu
Signaler
Messages postés
35
Date d'inscription
mercredi 21 décembre 2005
Statut
Membre
Dernière intervention
23 avril 2008
-
Messages postés
332
Date d'inscription
mardi 12 juillet 2005
Statut
Membre
Dernière intervention
17 juillet 2010
-
Bonjour
On m'a demandé de lier deux parties d'un projet.
j'ai fait une application JAVA (1ère partie) qui permet d'écrire dans un fichier texte les nom de certains fichiers. Un fichier php déjà existant (2ème partie) permet de lire ce fichier texte et de transférer les noms de fichiers vers une base de données et un serveur.
Le problème c'est que je ne sais pas du tout comment on fait pour appeler un fichier Php avec java et je n'ai rien trouvé sur le net ....
Pourriez-vous m'aider s'il vous plaît ???
merci à tous

5 réponses

Messages postés
35
Date d'inscription
mercredi 21 décembre 2005
Statut
Membre
Dernière intervention
23 avril 2008

Salut merci pour ta réponse !
j'ai trouvé une autre solution:
<hr size= "2" width="100%" /> public class Exec {
    publicstatic void main(String[] args) {
          System.out.println(ConnexionServer("http://localhost/test/upload.php"));
    }

publicString ConnexionServer(String adresse){
        String toreturn = null;
             try{
                 //creation d'un objet URL
                 URL url = new URL(adresse);
                 //on etablie une connection a cette url
                 try {
                     URLConnection uc = url.openConnection();
                     //on y cree un flux de lecture
                     InputStream in = uc.getInputStream();
                     // on lit le premier bit
                     int c = in.read();
                     //on cree un StringBuilder pour par la suite y ajouter tout les bit lus
                     StringBuilder build = new StringBuilder();
                     //tant que c n'est pas egale au bit indiquant la fin d'un flux...
                      while (c ! = -1) {
                         build.append((char) c);
                         //...on l'ajoute dasn le StringBuilder...
                         c = in.read();
                         //...on lit le suivant
                     }
                     //on retourne le code de la page
                     toreturn = build.toString();
                }
                catch (MalformedURLException e) {e.printStackTrace();}
             }
            catch(IOException e) {e.printStackTrace();}
             return toreturn;
    }
<hr size ="2" width="100%" />mon fichier php contient seulement <? echo "bonjour"; ?>. Il ne reste plus qu'à appeler le bon php !
merci à toi et à [auteurdetail.aspx?ID =234347 sheorogath (son code : http://www.javafr.com/infomsg_HTTPURLCONNECTION_746900.aspx#4)
]
Messages postés
332
Date d'inscription
mardi 12 juillet 2005
Statut
Membre
Dernière intervention
17 juillet 2010

Bonjour,
normalement il y a deux solution, soit vous appellez directement php,
c'est à dire tu execute un truc genre  ./REP_INSTAL_PHP/php -q REP_SCRIPT/ton_script.php sous linux
ou du genre C:\REP_INSTAL_PHP\php -q c:\REP_SCRIPT\ton_script.php  sous windows, et le resulat devrait sortir sur la sortie standart (à récupérer avec un truc genre:

        BufferedReader fluxResultat;
        Runtime r = Runtime.getRuntime();
        Process p = r.exec(cmd);
        fluxResultat = new BufferedReader(new InputStreamReader(p.getInputStream()));
        while ((ligne = fluxResultat.readLine()) != null) {
        }

)
soit vous avez un serveur http installé genre appache, et vous pouvez vous servir des sockets pour appeller la page comme sur le web (moins propre à mon avis).
Messages postés
332
Date d'inscription
mardi 12 juillet 2005
Statut
Membre
Dernière intervention
17 juillet 2010

Désolés, j'essaie de me mettre au vouvoiement sur les forum, mais j'ai du mal !!
http://kysicurl.free.fr/
Messages postés
332
Date d'inscription
mardi 12 juillet 2005
Statut
Membre
Dernière intervention
17 juillet 2010

Encore moi, plus d'info là bas:
http://tecfa.unige.ch/guides/php/php5_fr/features.commandline.html
(là je n'ai pas php d'installé, le -q était peut être une bétise.)
http://kysicurl.free.fr/
Messages postés
332
Date d'inscription
mardi 12 juillet 2005
Statut
Membre
Dernière intervention
17 juillet 2010

oui, en fait ça revient à utilisé les sockets,
vous utilisez la classe URLConnection pour interrogez le serveur HTTP présent sur la machine qui interroge php, puis vous renvoit le résultat en HTTP...
Mais l'important c'est que ça marche.
http://kysicurl.free.fr/