Des accents qui se changent en carrés

Petit nouveau ! | 4 Messages

09 sept. 2005, 22:48

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

Petit nouveau ! | 4 Messages

13 sept. 2005, 06:42

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!!

Invité
Invité n'ayant pas de compte PHPfrance

13 sept. 2005, 12:49

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.

Eléphant du PHP | 164 Messages

13 sept. 2005, 14:00

quand tu récupère ta variable met entre parenthèse dans la fonction suivante :

Code : Tout sélectionner

htmlentities($variable);

Petit nouveau ! | 4 Messages

13 sept. 2005, 14:34

Wow! Ça marche merveilleusement bien!

Merci

Eléphant du PHP | 164 Messages

13 sept. 2005, 15:08

et oui!!

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

Mammouth du PHP | 19672 Messages

13 sept. 2005, 16:24

et oui!!

HEY les mecsj :lol: e suis le nouveau maitre! php
avec 24 messages, c'est un bon départ :langue:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: