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

Composants Java Discussion :

Afficher une page php et réaliser un traitement


Sujet :

Composants Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 39
    Points
    39
    Par défaut Afficher une page php et réaliser un traitement
    Bonjour,

    je n'ai aucune connaissance sur les technologies web et je viens vers vous afin de réaliser un petit programme.

    Je voudrais en fait afficher une page internet (pas besoin de naviguer ensuite) et sauvegarder dans un fichier (comme si c'était une image) ce qu'elle contient. J'arrive grâce a un JEditorPane à afficher la page google, mais la page que je veux afficher est une page php et rien ne s'affiche, je suppose donc que c'est parce que c'est du php et non du html mais je me trompe peut être.

    Alors si vous pouviez m'indiquer une direction, une classe à utiliser afin de pouvoir afficher cette page en php et la sauvegarder ensuite, ca m'aiderait beaucoup.

    Merci d'avance et n'hésitez pas si vous avez des questions.

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    Personne ne peut m'aider ?

  3. #3
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Afficher une page en PHP ou en HTML ne devrait rien changer étant donné que la partie PHP est éxécutée côté serveur et que le client ne voit que de l'HTML.

    Est-ce que si tu accèdes à ta page PHP depuis ton navigateur, tu vois quelque chose ?

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    Bonjour,

    la page affiche une image et juste ca, c'est peut être pour ca mais dans la page google, le logo de google est affiché.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    Bonjour,

    lorsque j'execute ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    JFrame fenetre=new JFrame("Présentation");
    fenetre.setExtendedState (JFrame.MAXIMIZED_BOTH);
    JEditorPane html;
    try {
    	html = new JEditorPane("http://jborel.nerim.net/dns.php");
            JScrollPane scroll= new JScrollPane(html);
            fenetre.add(scroll);
            fenetre.setVisible(true);
         } catch (IOException e) {
    	e.printStackTrace();
         }
    La fenetre que j'obtiens contient des caractères illisibles, alors que la page n'est en fait qu'une image.

    Pourriez vous me dire ce que je dois faire pour afficher l'image ?

    Merci.

  6. #6
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Euh, ton image elle est envoyée directement comme ça ou dans du HTML?

    Car un JEditorPane n'est absolument pas fait pour afficher un flux binaire contenant un image. Si tu veux récupérer une image depuis le net et l'afficher autant directement passert par de l'ImageIO.read(URL url) pour lire l'image et l'afficher ensutie dans un composant destiné à afficher une image (comme un JLabel tout bête).

    Sinon pour vraiment l'afficher dans un JEditorPane il te faudra utiliser un document HTLM:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>pic</title>
    </head>
    <body>
        <img alt="MyImg" src="monImage.png" />
    </body>
    </html>
    Bref le JEditorPane est fait pour afficher du HTML, pas afficher directement des images

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    Je ne m'y connais pas très bien en techno web mais la page est une page php et elle ne contient qu'une image et donc je n'ai pas le nom de l'image.

    Je vais essayer ce que tu m'as dit avec imageIO.read.

    Merci beaucoup.

  8. #8
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Le fait est que ta page PHP te renvoie un flux binaire et non un flux HTML. Par exemple si tu essaies d'accéder directement à une image sur internet via une adresse comme la suivante http://upload.wikimedia.org/wikipedi...iotissa_95.JPG le serveur va renvoyer un flux dont le contenu est binaire en précisant un content-type spécifique genre image/png pour un png au contraire du html qui sera servi avec un content type text/html. De fait il ne pourra être affiché par un programme comprenant le type de retour. Ton script php fait de même il précise avant d'envoyer les données que le flux de retour est de type binaire, puis envoie les données binaires dans le flux. De fait un composant attendant des données de type texte (comme le fait le JEditorPane) sera incapable de comprendre les données renvoyées, donc affichera les caractères étranges que tu voies.

    Grosso modo depuis un langage coté serveur (que ce soit du PHP, du java, du perl, du python & cie) on peut envoyer tout et n'importe quoi dans la flux répondant (la réponse) à une requête HTTP à partir du moment où le protocole HTTP est respecté.

    ce qui se passe c'est que ce que tu reçois n'est pas une page, juste le contenu renvoyé par ton script PHP coté serveur. Contenu qui est une image et non une page HTML. Si tu accèdes à cette adresse avec un navigateur, tu verras qu'il n'est pas possible d'accéder au code source de la page, vu qu'il n'y a pas de page.

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    D'accord, je comprends.
    Mais tout ce que je veux c'est récupérer l'image qui est à cette adresse donc y a t-il une classe qui permet de lire un flux binaire ?

    C'est vraiment pour une application très simple, je veux juste récupérer l'image, la mettre dans un composant graphique, si possible, et l'enregistrer dans un fichier. C'est juste pour la récupération que je ne sais pas comment faire, je n'ai pas encore essayé avec imageIO.

    Merci pour votre aide.

  10. #10
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Citation Envoyé par Cbonniot Voir le message
    D'accord, je comprends.
    Mais tout ce que je veux c'est récupérer l'image qui est à cette adresse donc y a t-il une classe qui permet de lire un flux binaire ?

    C'est vraiment pour une application très simple, je veux juste récupérer l'image, la mettre dans un composant graphique, si possible, et l'enregistrer dans un fichier. C'est juste pour la récupération que je ne sais pas comment faire, je n'ai pas encore essayé avec imageIO.

    Merci pour votre aide.
    Tu as moyen de nous donner le lien vers cette image ?

    Ce sera plus simple pour t'aider.

  11. #11
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Bah essaie avant de demander, nan mais ho, ça sert à quoi qu'on donne des solutions si les gens ne prennent même pas la peine de les tester. Oui ImageIO permet de lire des images peut importe l'endroit où elles se trouvent tant qu'il existe une URL pour y accéder. Cf la javadoc d'ImageIO.

    Grrrr

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    Ce n'est pas la peine de t'énerver, j'ai dit que je n'avais pas encore testé, ca veut dire que je vais le faire, c'est juste que c'est un truc perso et que j'ai pas mal de boulot en ce moment et donc pas le temps pour ca. Je ne vous demande pas de me donner le code pour que je n'ai plus qu'a faire un copier coller.

    Alors excuse moi si j'ai donné l'impression d'attendre qu'on me dise tout ce que je dois faire, ce n'était pas ce que je voulais.

    L'image est disponible ici.

    Merci beaucoup.

  13. #13
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Non mais sérieusement ça marche très bien avec ImageIO pour ton adresse et en quelques lignes de code (dont plus de la moitié pour la gestion des exceptions). (je viens de l faire tourner en local)

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    D'accord merci beaucoup de votre aide.

Discussions similaires

  1. Afficher une page PHP avec un appel JS
    Par lounou dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 25/11/2012, 15h15
  2. Réponses: 9
    Dernier message: 24/01/2008, 18h42
  3. Réponses: 4
    Dernier message: 22/05/2007, 10h52
  4. Afficher une page php dans une page php
    Par griese dans le forum Langage
    Réponses: 9
    Dernier message: 09/06/2006, 17h24
  5. afficher une page PHP dans une page PHP ?
    Par sirbaldur dans le forum Langage
    Réponses: 4
    Dernier message: 05/05/2006, 19h42

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