Page 1 sur 2

Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 10:20
par Neutre
Bonjour,

Je m'essaye à créer une page "climatologie" avec le script de Chriss. J'ai bien suivi ses instructions et j'obtiens bien les pages php climatom.php et climatoa.php :
http://www.meteovilliers.fr/NOAA/climat ... 09&mois=11

Curiosité, les caractères accentués ne s'affichent pas pour le seul mois de décembre 2009...
Quand, j'inclus cette page via un iframe : http://www.meteovilliers.fr/la_climatologie.html
ce sont cette fois tous les tableaux qui ont un problème d'affichage (voir la capture) !

Je comprends bien qu'il doit avoir une question de déclaration de types de caractères mais je ne maitrise pas le sujet ;-)
A tout hasard, j'ai joint une capture de mon entête de page html.
Une idée ?

Jean

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 16:14
par Neutre
Je me suis souvenu d'un problème équivalent http://rieux-marne.net/phpBB3/viewtopic ... 8res#p4996
que Rieux avait débloqué en me faisant modifier mon entête ainsi :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html style="direction: ltr;" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="fr-fr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
<meta name="description" content="La Météo du 20ème" />
<meta name="keywords" content="meteo, weather, station, webcam, observations, précipitations /> <meta name=" />
<link rel="stylesheet" type="text/css" href="http://www.meteovilliers.fr/1024px.css" title="1024px" media="screen,projection" /><title>&nbsp;La Météo des toits de Paris</title></head>
Mais dans ce cas, en procédant ainsi, l'iframe retrouve ses beaux caractères mais la page perd les siens :oops:

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 16:27
par webmaster
Bonjour,

Effectivement tu mélanges un peu les codages de caractères !

Voici celui que tu dois employer pour coller avec ta page PHP.

Code : Tout sélectionner

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
A mettre en lieu et place de ta ligne

Code : Tout sélectionner

<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
Le code PHP que tu utilises n'est pas de Chriss mais de Polux dans le Rhône (pour info).
http://logiciels.meteo-mc.fr/

A bientôt

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 16:57
par Neutre
Bonjour Rieux,

Voici ce que j'obtiens en remplaçant la ligne
Caract.JPG
S'agissant du code, je suis pourtant quasiment sûr d'être parti du climato.zip que l'on trouve sur le site de Chriss :?: même si je l'ai modifié (un peu) en regardant celui de Tugdur.

Cordialement

Jean

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 17:12
par webmaster
Maintenant le problème vient du logiciel que tu utilises pour éditer ton code !
Affiche la source de ta page, elle s'affiche comme elle est écrite.

La voici comme elle était il y a une heure.

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html style="direction: ltr;" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="fr-fr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<meta name="description" content="La Météo du 20&egrave;me" />
<meta name="keywords" content="meteo, weather, station, webcam, observations, précipitations /> <meta name=" />
<link rel="stylesheet" type="text/css" href="1024px.css" title="1024px" media="screen,projection" /><title>
&nbsp;La Météo des toits de Paris</title></head>

<body>
<div id="wrap">
<div id="header">
<p id="toplinks">Aller &agrave; : <a target="_top" href="index1.html">Accueil</a>
| <a href="#sidebar">Navigation</a> | <a href="#footer">Bas de page</a></p>

<h1><a href="index1.html">La &nbsp;Météo des toits de Paris<span class="fade"></span></a></h1>
<p id="slogan">Rue Villiers de l'Isle Adam &nbsp;- Paris (20&egrave;me)</p>

<h2>La Climatologie de ma Rue</h2>
<iframe name="I1" src="http://www.meteovilliers.fr/NOAA/climatom.php" border="0" frameborder="0" height="2300" width="975">Tableau
des données climatologique</iframe>
<br />
<p class="box"><strong>Nota :&nbsp;</strong>&nbsp;Ce site est celui d'un amateur de météo 
et, en aucun cas, celui d'un professionnel. Aucune garantie n'est donc donnée 
sur les informations qui y figurent. Si vous avez une décision importante &agrave; 
prendre qui dépend de la météo, ignorez ce site et référez vous &agrave; un site 
officiel, tel celui de <a href="http://www.meteofrance.com/" target="_blank">
Météo France</a> &nbsp;!</p>

</div>

<div id="footer">
<p><a href="mailto:neutre99@wanadoo.fr">Envoyez moi un message</a>
| <a target="_top" href="index1.html">Accueil</a>
| <a href="la_meteo_du_moment.html">Météo détaillée</a>
| <a target="_top" href="start.html">Archives</a>
|&nbsp;<a href="#header">Vers le haut</a><br />

&copy; 2008&nbsp;<a href="mailto:neutre99@wanadoo.fr">Jean Neutre</a> | <a href="http://andreasviklund.com/templates/" title="Original CSS template design">
Original design</a>
by <a href="http://andreasviklund.com/" title="Andreas Viklund">Andreas Viklund</a>.</p>
</div>
</div>
<!-- phpmyvisites -->
<a href="http://www.phpmyvisites.net/" title="phpMyVisites | Open source web analytics" onclick="window.open(this.href);return(false);">
<script type="text/javascript">
<!--
var a_vars = Array();
var pagename='';
var phpmyvisitesSite = 1;
var phpmyvisitesURL = "http://www.meteovilliers.fr/phpmv2/phpmyvisites.php";
//-->
</script>

<script language="javascript" src="http://www.meteovilliers.fr/phpmv2/phpmyvisites.js" type="text/javascript"></script><object>
<noscript><p>phpMyVisites | Open source web analytics
<img src="http://www.meteovilliers.fr/phpmv2/phpmyvisites.php"
alt="Statistics" style="border:0" />
</p></noscript>
</object></a><!-- /phpmyvisites -->
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-5293394-1");
pageTracker._trackPageview();
</script>
</body></html>

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 17:23
par Neutre
Rieux,
j'utilise Notepad++.
J'ai vérifié la page html avent transfert et après transfert sur le serveur et j'ai cela :
Notepad.JPG

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 17:26
par webmaster
Moi je vois cela:

Code : Tout sélectionner

<p id="toplinks">Aller Ă  : <a target="_top" href="index1.html">Accueil</a>
| <a href="#sidebar">Navigation</a> | <a href="#footer">Bas de page</a></p>

<h1><a href="index1.html">La &nbsp;MĂŠtĂŠo des
toits de Paris<span class="fade"></span></a></h1>
<p id="slogan">Rue Villiers de l'Isle Adam
&nbsp;- Paris (20ème)</p>

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 17:31
par webmaster
Essaye de la passer en 8859-1 pour voir !
Ici cela fonctionne parfaitement.

http://rieux-marne.net/test.htm

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 17:37
par Neutre
Effectivement, ton test marche bien !
[edit]En fait non. Ca fonctionne bien pour janvier 2010 mais dès que tu changes de mois le tableau est perturbé, les "à" en particulier. Mais c'est le tableau qui a un problème et pas l'entête comme chez moi :sad: [/edit]
Mais quand je passe à 8859-1, voilà ce que j'obtiens :
t3.JPG
J'ai essayé avec Chrome, IE8, Firefox 3.5 et Opera : même résultat. Ce n'est donc pas dû au navigateur.

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 18:05
par webmaster
J'ai beau essayer de toutes les manières, je n'arrive pas à reproduire l'erreur ici !
Essaie de remonter ta page d'une autre manière, sans usage de logiciel FTP, ou un autre.
Windows peut très bien se connecter seul en FTP chez ton hébergeur, dans ce cas tente en faisant un simple copier/coller.

A moins que ton logiciel FTP est une option pour ne pas modifier l'encodage durant le transfert.

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 19:37
par Neutre
Bon, je m'arrache les cheveux :roll:
En tout cas merci pour ton aide :wink:
Je me sers de FTP-uploader pour la mise à jour du site mais pour ces modifications je transfère avec Filezilla avec l'option transfert à "binaire".
Ce qui doit fonctionner car lorsque je réimporte le fichier html du serveur à mon ordi (dans un autre répertoire) il est la copie conforme de l'envoi initial.
Ce qui me parait vouloir dire que le transfert n'y est pour rien.

Pour que je comprenne bien : tu as fait ton test en recopiant ma page (et en modifant le lien vers climatom.php puis les données de l'entête de la page)). C'est bien cela ?

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 19:56
par webmaster
Je sais, je vois bien !
Mais je te rassure, je cherche également une solution de mon coté.....

En mode binaire théoriquement, ca met ton FTP hors de cause !
Essaie d'ouvrir ton code HTML en local avec un autre logiciel, Word, Wordpad, Notepad....
Pour voir son apparence.

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 20:29
par Neutre
Quand je l'ouvre sous Wordpad, il a une sale tête !
t4.JPG

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 20:55
par webmaster
Et bien voilà le problème !
Tu as du toucher, modifier un truc dans la configuration de Notepad++, ou les propriétés de ta page !
Moi perso je tenterai un truc pour voir.....
Je supprimerai la page, chez l'hébergeur, et chez toi en local.
Ensuite je collerai ce code dans une nouvelle page que tu nommeras de la même manière que la précédente, et puis tu l'envoies chez ton hébergeur pour voir.

Code : Tout sélectionner

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html style="direction: ltr;" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="fr-fr"><head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
    <meta name="description" content="La Météo du 20&egrave;me" />
    <meta name="keywords" content="meteo, weather, station, webcam, observations, précipitations /> <meta name=" />
    <link rel="stylesheet" type="text/css" href="1024px.css" title="1024px" media="screen,projection" /><title>
    &nbsp;La Météo des toits de Paris</title></head>

    <body>
    <div id="wrap">
    <div id="header">
    <p id="toplinks">Aller &agrave; : <a target="_top" href="index1.html">Accueil</a>
    | <a href="#sidebar">Navigation</a> | <a href="#footer">Bas de page</a></p>

    <h1><a href="index1.html">La &nbsp;Météo des toits de Paris<span class="fade"></span></a></h1>
    <p id="slogan">Rue Villiers de l'Isle Adam &nbsp;- Paris (20&egrave;me)</p>

    <h2>La Climatologie de ma Rue</h2>
    <iframe name="I1" src="http://www.meteovilliers.fr/NOAA/climatom.php" border="0" frameborder="0" height="2300" width="975">Tableau
    des données climatologique</iframe>
    <br />
    <p class="box"><strong>Nota :&nbsp;</strong>&nbsp;Ce site est celui d'un amateur de météo
    et, en aucun cas, celui d'un professionnel. Aucune garantie n'est donc donnée
    sur les informations qui y figurent. Si vous avez une décision importante &agrave;
    prendre qui dépend de la météo, ignorez ce site et référez vous &agrave; un site
    officiel, tel celui de <a href="http://www.meteofrance.com/" target="_blank">
    Météo France</a> &nbsp;!</p>

    </div>

    <div id="footer">
    <p><a href="mailto:neutre99@wanadoo.fr">Envoyez moi un message</a>
    | <a target="_top" href="index1.html">Accueil</a>
    | <a href="la_meteo_du_moment.html">Météo détaillée</a>
    | <a target="_top" href="start.html">Archives</a>
    |&nbsp;<a href="#header">Vers le haut</a><br />

    &copy; 2008&nbsp;<a href="mailto:neutre99@wanadoo.fr">Jean Neutre</a> | <a href="http://andreasviklund.com/templates/" title="Original CSS template design">
    Original design</a>
    by <a href="http://andreasviklund.com/" title="Andreas Viklund">Andreas Viklund</a>.</p>
    </div>
    </div>
    <!-- phpmyvisites -->
    <a href="http://www.phpmyvisites.net/" title="phpMyVisites | Open source web analytics" onclick="window.open(this.href);return(false);">
    <script type="text/javascript">
    <!--
    var a_vars = Array();
    var pagename='';
    var phpmyvisitesSite = 1;
    var phpmyvisitesURL = "http://www.meteovilliers.fr/phpmv2/phpmyvisites.php";
    //-->
    </script>

    <script language="javascript" src="http://www.meteovilliers.fr/phpmv2/phpmyvisites.js" type="text/javascript"></script><object>
    <noscript><p>phpMyVisites | Open source web analytics
    <img src="http://www.meteovilliers.fr/phpmv2/phpmyvisites.php"
    alt="Statistics" style="border:0" />
    </p></noscript>
    </object></a><!-- /phpmyvisites -->
    <script type="text/javascript">
    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
    </script>
    <script type="text/javascript">
    var pageTracker = _gat._getTracker("UA-5293394-1");
    pageTracker._trackPageview();
    </script>
    </body></html>

Re: Iframe de PHP : gestion des caractères

Posté : 17 janv. 2010, 21:30
par webmaster
Boulette ! ! !
J'ai laissé l'encodage 8859-2 à remplacer par 8859-1 :oops: