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

XML/XSL et SOAP Discussion :

Accents par rendus sur le web


Sujet :

XML/XSL et SOAP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Webmarketer
    Inscrit en
    Septembre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmarketer

    Informations forums :
    Inscription : Septembre 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Accents par rendus sur le web
    Bjr,
    J'ai un fichier en xml avec des champs qui contiennent des lettres accentués en plusieurs langues ("à l'église", Dvořák, ß, etc.). Sur le web cela se présente comme "à l'église" etc. Comment y remédier ? Le résultat sans ou avec l'utilisation du fichier xsl est le même. Les fichiers xml et xls se trouvent dans le même dossier /XLM.

    Le fichier en xml (fragment):
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <?xml-stylesheet type="text/xsl" href="Ulrike_Van_Cotthem_Media_Sound.xsl"?>
    <Sound Date="03/08/2010 11:29">
    <Record>
    <Compositeur_prenom>Vladimir</Compositeur_prenom>
    <Compositeur_nom>Cosma</Compositeur_nom>
    <OEuvre>Cantate 1209</OEuvre>
    <Titre>O doux visage</Titre>
    <MP3>Cosma - Cantate 1209 - O doux visage.mp3</MP3>
    <Enregistrement>en concert le 6 juin 2009 à l'église de la Madeleine à Béziers</Enregistrement>
    </Record>
    ...
    </Sound>

    Le fichier Ulrike_Van_Cotthem_Media_Sound.xsl:
    <xsl:transform version = "1.0"
    xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
    <xsl:output method="html" media-type="text/html; charset=ISO-8859-1"/>
    </xsl:transform>

    La page web (fragments):
    <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
    <%Option Explicit%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:spry="http://ns.adobe.com/spry">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    ...
    <%
    Dim xmlDoc, comp_prenom, comp_nom, oeuvre, titre, mp3, enreg, rec_Element, rec_Arr(), i, j
    Redim rec_Arr(9,6)
    Set xmlDoc = Server.CreateObject("Microsoft.XMLDOM")
    xmlDoc.async = False
    xmlDoc.load (Server.MapPath("XML/Ulrike_Van_Cotthem_Media_Sound.xml"))
    i=-1
    For Each rec_Element In xmlDoc.selectNodes("/Sound/Record")
    i=i+1
    rec_Arr(i,0)=rec_Element.selectSingleNode("Compositeur_prenom").text
    rec_Arr(i,1)=rec_Element.selectSingleNode("Compositeur_nom").text
    rec_Arr(i,2)=rec_Element.selectSingleNode("OEuvre").text
    rec_Arr(i,3)=rec_Element.selectSingleNode("Titre").text
    rec_Arr(i,4)=rec_Element.selectSingleNode("MP3").text
    rec_Arr(i,5)=rec_Element.selectSingleNode("Enregistrement").text
    Next
    Set xmlDoc = Nothing
    %>
    ...
    </head>
    <body>
    ...
    <table>
    <%for j=0 to i%>
    <tr>
    <td>
    <%response.Write(rec_Arr(j,0))%>
    <%response.Write(rec_Arr(j,1))%>
    <%response.Write(rec_Arr(j,2))%>
    <%response.Write(rec_Arr(j,3))%>
    <%response.Write(rec_Arr(j,5))%>
    </td>
    </tr>
    <%next%>
    </table>
    ...
    </body>
    </html>

    Le résultat: http://www.ulrike-van-cotthem.com/Media_100927.asp: voir colonne de droite.

    Merci d'avance pour votre aide.

    Erik

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par evd46 Voir le message
    J'ai un fichier en xml avec des champs qui contiennent des lettres accentués en plusieurs langues ("à l'église", Dvořák, ß, etc.).
    Dans ce cas l'utilisation de iso-8859-1 n'est pas forcément une bonne idée : il ne gère pas le ř, par exemple. utf-8 est sans doute plus adapté à tous types de caractères.

    De manière générale, il semble que tes fichiers, et la page résultante, soient bel et bien encodés en utf-8. Mais à chaque fois tu déclares qu'ils sont encodés en iso-8859-1, donc personne ne pose de question, et traite/affiche en considérant que c'est du iso-8859-1.
    Déclare à la place que c'est du utf-8, et ça devrait résoudre ton problème.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Webmarketer
    Inscrit en
    Septembre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmarketer

    Informations forums :
    Inscription : Septembre 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut C'est ça: utf-8 marche !
    Citation Envoyé par thelvin Voir le message
    Dans ce cas l'utilisation de iso-8859-1 n'est pas forcément une bonne idée : il ne gère pas le ř, par exemple. utf-8 est sans doute plus adapté à tous types de caractères.

    De manière générale, il semble que tes fichiers, et la page résultante, soient bel et bien encodés en utf-8. Mais à chaque fois tu déclares qu'ils sont encodés en iso-8859-1, donc personne ne pose de question, et traite/affiche en considérant que c'est du iso-8859-1.
    Déclare à la place que c'est du utf-8, et ça devrait résoudre ton problème.
    Bjr Thelvin,

    J'ai dû maintenir le codage iso-8859-1 dans le fichier XML (sinon erreur) et j'ai préféré le maintenir dans le fichier XSL (pour la congruence entre les deux).

    En revanche, j'ai changé dans ma page web <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> en <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> et du coup les caractères sont rendus correctement.

    Mille fois merci!
    Erik

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Bien. Maintenant que j'y pense, je ne vois pas à quoi sert le fichier .xsl. Je ne serais pas surpris qu'il ne soit pas lu.

    De fait, je ne pouvais pas savoir quel est l'encodage d'origine du fichier XML. Aucun soucis de ce côté.

    Quant au fait que la page soit produite en utf-8, c'est simplement dû au CODEPAGE="65001".
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Webmarketer
    Inscrit en
    Septembre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmarketer

    Informations forums :
    Inscription : Septembre 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut http://www.ulrike-van-cotthem.com/Media.asp marche!
    Citation Envoyé par thelvin Voir le message
    Bien. Maintenant que j'y pense, je ne vois pas à quoi sert le fichier .xsl. Je ne serais pas surpris qu'il ne soit pas lu.

    De fait, je ne pouvais pas savoir quel est l'encodage d'origine du fichier XML. Aucun soucis de ce côté.

    Quant au fait que la page soit produite en utf-8, c'est simplement dû au CODEPAGE="65001".
    Vous avez raison, Thelvin: j'ai effacé dans le fichier xml le lien vers le fichier xsl et rien ne changeait. Bon débarras, donc .

    La page est maintenant visible sur http://www.ulrike-van-cotthem.com/Media.asp.

    Merci de votre aide.

    Erik

Discussions similaires

  1. Réponses: 0
    Dernier message: 30/03/2009, 11h59
  2. [News] Lancement un outil basé sur le Web par Intel
    Par aodix dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 13/02/2009, 12h16
  3. configuration de site web par defaut sur IIS
    Par debutantasp dans le forum ASP
    Réponses: 4
    Dernier message: 12/01/2008, 13h59
  4. Réponses: 2
    Dernier message: 23/11/2007, 13h02
  5. [Cookies] Langue par défaut sur un site web
    Par Jet-Li dans le forum Langage
    Réponses: 3
    Dernier message: 09/12/2005, 20h52

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