Page 1 sur 1

Des accents qui se changent en carrés

Posté : 09 sept. 2005, 22:48
par Krom2000
Dans le fichier index de ma section téléchargement je fais appele à un autre fichier qui contient les fonctions pour bâtir le Header, le Body et le Footer de la page.
<?php

$Source = 'Téléchargements';
$SousSource = '';
//echo $Source;

include $_SERVER["DOCUMENT_ROOT"] . '/site.php';

site_header();
site_body();
Dans la fonction "site_body()", je fais écrire le nom de la section. Le nom est contenu dans la variable $Source qui est déclarée dans le bloc de code si-haut.
function site_body()
{
	global $Source;
	
	echo "</head>\n";
	echo "<body bgcolor=\"maroon\" alink=\"white\" link=\"white\" vlink=\"white\" text=\"#99CCFF\">\n";
	echo "<table width=\"100%\" border=\"0\" align=\"center\" bgcolor=\"gray\" height=\"100%\">\n";
	echo "\t<tr>\n";
	echo "\t\t<td colspan=\"2\" align=\"center\" bgcolor=\"black\" height=\"70\" valign=\"bottom\">\n";
	echo "\t\t\t<font size=\"5\"><b>";
	echo $Source;
	echo "</b></font><br><br>\n";
	echo "\t\t</td>\n";
	echo "\t</tr>\n";
	echo "\t<tr>\n";
	echo "\t\t<td width=\"200\" align=\"left\" valign=\"top\" bgcolor=\"black\">\n";

	// Afficher le menu
	aff_menu();

	echo "\t\t</td>\n";
	echo "\t\t<td align=\"left\" valign=\"top\" bgcolor=\"black\">\n";
}
Le problème est qu'à l'affichage de la page le nom de la section c'est T鬩chargements.

Si je fais un echo de la variable $Source après la déclaration, comme on peut le voir en commentaire dans le premier bloc de code, le nom de la section s'écrit correctement. Mais le output de cette commande echo me donne "Téléchargements" dans le coin haut gauche. Grrrr.

Dans l'en-tête de la page j'ai la balise meta suivante pour setter le character set.
echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">\n";
Si je tapper le mot Téléchargement dans un simple fichier HTML, il n'y a aucun problème.

Aidez moi SVP

Posté : 13 sept. 2005, 06:42
par Krom2000
Il y a du changement.

J'ai changé ma version de PHP 4.3.6 pour la 5.0.5 et le problème est toujours là. :cry:

J'ai également éditer mon php.ini comme suit:
default_charset = UTF-8

Cela n'a rien changé.

SVP aidez moi!!

Posté : 13 sept. 2005, 12:49
par Invité
pour éviter tout problème d'encodage je convertis les caractères spéciaux en entité html:
http://www.commentcamarche.net/html/htmlcarac.php3
http://fr3.php.net/manual/fr/function.htmlentities.php

mais ceux qui maitrisent mieux que moi tout ce qui est relatif à l'encodage pourront te donner une réponse différente.

ZE solution

Posté : 13 sept. 2005, 14:00
par toto37
quand tu récupère ta variable met entre parenthèse dans la fonction suivante :

Code : Tout sélectionner

htmlentities($variable);

Posté : 13 sept. 2005, 14:34
par Krom2000
Wow! Ça marche merveilleusement bien!

Merci

ZE solution

Posté : 13 sept. 2005, 15:08
par toto37
et oui!!

HEY les mecsj :lol: e suis le nouveau maitre! php

Re: ZE solution

Posté : 13 sept. 2005, 16:24
par Cyrano
et oui!!

HEY les mecsj :lol: e suis le nouveau maitre! php
avec 24 messages, c'est un bon départ :langue: