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

XSL/XSLT/XPATH XML Discussion :

[XML]générer des pages à la volée avec xml et php [Débutant(e)]


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut [XML]générer des pages à la volée avec xml et php
    Bonjour,

    est-il possible, avec xml + php de générer des pages à la volée ?
    Quels scripts php font cela ?

    A bientôt...

  2. #2
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    Citation Envoyé par php_de_travers
    est-il possible, avec xml + php de générer des pages à la volée ?
    un exemple ?

  3. #3
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut
    Je pense avoir trouvé une piste avec simplexml en php5 qui parse le xml...

  4. #4
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    je repete la question: qu'est ce que tu appelle generer des pages à la volée, un exemple ?


  5. #5
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut
    Générer des pages à la volée, c'est à dire créer une page structure dans laquelle le contenu est ajouté en fonction de paramètres qui envoient le code chercher les infos dans une bdd.

  6. #6
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    Bon en gros tu recuperes des infos BDD , tu obtiens une forme XML tu transforme HTML avec xslt
    deux methode
    - sur serveur direct avec php
    - coté client , grace à ajax tu recupère les xml

    C'est ca (je vois pas trop ce que viens faire le "à la volé" mais bon)

    Bon a part que mysql (le couple le plus commun avec php) ne fournit pas "nativement" une sortie xml et qu'on est obligé de le faire en PHP (au contraire d'oracle) , c'etait ou ton pb ?

  7. #7
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    Euh... là ca m'interresse....

    Coté client, avec Ajax, Ok : on recupere un XML et on genere le HTML....

    Mais coté serveur ?

    - On fait un script PHP
    - Le script lit des données mySQL, fait de traitements...
    - Le script genere une sortie XML et non pas HTML
    - La sortie XML est envoyée au client
    - Le client genere une page HTML grace à une feuille de style

    Mais comment la page XML est-elle interprettée convenablement par le client ?

    Euh, en fait quel en-tete (DOCTYPE....) faut-il donner à la sortie XML pour quelle soit comprise convenablement par le client, malgré l'extension .php du fichier ?

    Ou alors je n'ai rien compris....

    Merci !

  8. #8
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    coté client-Avec ajax , on a eu une feuille html qui, dans un objet javascript, contient une feulle xslt
    coté serveur - c'est la que le xml est transforme en html par une feuille xslt.
    Exactement comme le php produit du html en temps habituels



    regarde du coté de ces scripts
    http://www.developpez.net/forums/sho...93&postcount=3
    http://www.developpez.net/forums/sho...57&postcount=4 (pas du php5 mais ca donne l'idée)

  9. #9
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    Donc en fait, si je comprend bien :

    Coté serveur on utilise un processeur XML/XSL qui va transformer notre XML en HTML et envoyer le HTML resultant....

    Merci !

  10. #10
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    oui

  11. #11
    Futur Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par Erwy
    Bon a part que mysql (le couple le plus commun avec php) ne fournit pas "nativement" une sortie xml et qu'on est obligé de le faire en PHP (au contraire d'oracle) , c'etait ou ton pb ?
    ça m'intéresse aussi ça :


    Comment réaliser une sortie xml directement à partir d'une base oracle?

  12. #12
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    IL y a plusieurs methodes, je n'ai pas malheureusement acces ici, mais je pourrais le poster lundi
    deux methodes les plus simples te les plus modulables:

    - faire une procedure stockeée qui prend en paramètre n'importe quelle requête sql et renvoi un fichier xml canonique
    - faire une requête en xsql (c'est natif a partir de 9i si mes souvenirs sont bons), l'avantage c'est qu'on obtient le xml sous la forme qu'on demande

  13. #13
    Futur Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par Erwy
    IL y a plusieurs methodes, je n'ai pas malheureusement acces ici, mais je pourrais le poster lundi
    deux methodes les plus simples te les plus modulables:

    - faire une procedure stockeée qui prend en paramètre n'importe quelle requête sql et renvoi un fichier xml canonique
    - faire une requête en xsql (c'est natif a partir de 9i si mes souvenirs sont bons), l'avantage c'est qu'on obtient le xml sous la forme qu'on demande
    J'attends ta réponse avec impatience!!

    xsql : c'est séduisant ça!

  14. #14
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    La procédure stockée

    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
    CREATE OR REPLACE procedure SORTIE_XML(nom_buf out CLOB,requ in varchar2) is
     
     
    /* handler indispensable à la création du flux XML*/
     
    /* nom_buf  sortie xml dans un clob, requ la requête sql*/
     
    ctxhand sys.DBMS_XMLQUERY.ctxType;
     
     
     
    begin
     
    ctxhand:=sys.dbms_xmlquery.newcontext(requ);
     
     
     
     
     
    /* récupération du flux XML dans le CLOB */
     
    sys.dbms_xmlquery.setencodingtag(ctxhand,'ISO-8859-1');
     
    nom_buf:=sys.dbms_xmlquery.getxml(ctxhand);
     
    sys.dbms_xmlquery.closeContext(ctxhand);
     
    end;
     
    /
    la forme canonique

    soit une table TEST
    avec les champs T1 (contient a)et T2 (contient b)

    renverra
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?xml version="1.0" encoding="UTF-8"?>
    <ROWSET>
    	<ROW num="1">
    		<T1>a</T1>
    		<T2>b</T2>
    	</ROW>
    </ROWSET>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select T1 as B1, T2 as B2 from test
    renverra
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?xml version="1.0" encoding="UTF-8"?>
    <ROWSET>
    	<ROW num="1">
    		<B1>a</B1>
    		<B2>b</B2>
    	</ROW>
    </ROWSET>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 19/11/2014, 09h40
  2. Réponses: 1
    Dernier message: 14/12/2011, 10h23
  3. Coloration syntaxique des pages JSP/XML
    Par basket dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/09/2006, 17h19
  4. îlots XML dans des pages XHTML
    Par sekaijin dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 12/09/2005, 20h29

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