Bonjour,
je me heurte à un problème étrange (du moins pour moi).
J'en appel à vos lumières.
Je code de la manière suivante.
Tous mes fichiers ont une extension .php
je travail tout en php, je veux dire par la que si je dois afficher de l' html, je fais un echo 'mon code';
Je structure mes fichiers de la manière suivante:
contenu du fichier code.inc.php
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 <?php $error = 1; $error_message = ''; require_once ("code.inc.php"); $anneecopy = date('Y'); /* ~~~~~~~~~~~~~~~~~~~~~~~~ Debut de la page ~~~~~~~~~~~~~~~~~~~~~~~~~~ */ echo '<!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" xml:lang="fr" lang="fr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> </body> </html> '; ?>
Mais systématiquement lorsque j'affiche le code source de la page sur mon navigateur, j'ai un caractère devant le doctype. Ceci a pour conséquente de gêner mon style (décalage) et de me générer une erreur de validation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <?php ?>
Sur FF c'est un point et sous IE c'est un rectangle.
Aprés plusieurs tests, je me suis apercu qu'il suffisait que j'enlève la ligne require_once pour que tout rentre dans l'ordre. Il suffit même que j'enlève les balises php pour que ca marche.
je précise que je travail tout en utf-8. Donc mon document est encodé utf-8, le serveur apache a le paramètre adddefaultcharset utf-8, le php.ini a default_charset utf-8.
j'ai effectué des tests en local sur un windows + apache + php, et sur un linux + apache + php. Même résultats.
Si quelqu'un a déjà rencontré ce soucis.....
Merci
Partager