Incompabilité xhtml et php
Incompabilité xhtml et php
Bonjour,
J'ai créé une page en xhtml et je lui ai donné l'extension php car j'ai l'intention d'y insérer des scripts php. Mais, quand j'essaye d'afficher cette page j'obtiens un message d'erreur, car la première ligne "<?xml version="1.0" encoding="iso-8859-1"?>" est interprétée comme du php.
Y a-t-il une solution à ce problème ?
Merci d'avance, Antoine
J'ai créé une page en xhtml et je lui ai donné l'extension php car j'ai l'intention d'y insérer des scripts php. Mais, quand j'essaye d'afficher cette page j'obtiens un message d'erreur, car la première ligne "<?xml version="1.0" encoding="iso-8859-1"?>" est interprétée comme du php.
Y a-t-il une solution à ce problème ?
Merci d'avance, Antoine
Code : Tout sélectionner
echo"<?xml version="1.0" encoding="iso-8859-1"?>";

EDIT : j'allais oublier : fais attention à ne pas laisser d'espace ou d'autres caractères (retour à la ligne) avant le prologue xml

J'aurais pas imaginé que c'était aussi simple que ça
!
edit : y avait juste une petite erreur dans ton code ! pour echo, faut mettre des "guillemets simples" sinon ça marche pas !
Merci !

edit : y avait juste une petite erreur dans ton code ! pour echo, faut mettre des "guillemets simples" sinon ça marche pas !
Code : Tout sélectionner
<? echo'<?xml version="1.0" encoding="iso-8859-1"?>'; ?>
Ah, erreur en effet : guillemets simples ou protéger les guillemets doubles 
Code : Tout sélectionner
echo"<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>";

Ah bon ? Pourtant dans un article d'Openweb (article) , il est dit de le mettre ????Benoit a écrit :Juste une remarque, cette ligne est facultative en XHTML et fait passer Internet Explorer en mode non (certains diront encore moins) standard. Donc c'est peut-être mieux de la laisser tomber tout à fait.
Non, c'est chez un hébergeur !Xanthor a écrit :Si c'est un serveur sur lequel tu peux modifier la config, tyu peux demander à PHP de ne s'occuper que de ses PI (<?php) au lieu de toutes chercher à les interpreter...
Antoine
Il le faut le mettre si:Antoinei a écrit : Ah bon ? Pourtant dans un article d'Openweb (article) , il est dit de le mettre ????
- La page est envoyée en application/xhtml+xml
- L'encodage du document est différent de UTF-8 et UTF-16
« La vie d’un geek est un combat perpétuel contre l’imperfection »
Pour ça tu peux utiliser le code suivant :
Code : Tout sélectionner
if( stristr($HTTP_SERVER_VARS["HTTP_ACCEPT"], "application/xhtml+xml") )
{
header("Content-Type: application/xhtml+xml");
echo "<?xml version='1.0' encoding='utf-8'?>\n";
}
Donc j'ai fait les différentes modifs, de telle sorte que ma page commence comme ça
mais quand j'essaye de faire valider ma page, j'obtiens le message d'erreur "Fatal Error: No DOCTYPE specified!" !!??
Edit : j'ai aussi ça quand je veux visualier la page
"Parse error: parse error, unexpected T_STRING in D:\serveur\site\antoine\index.php on line 4"
Code : Tout sélectionner
if( stristr($HTTP_SERVER_VARS["HTTP_ACCEPT"], "application/xhtml+xml") )
{
header("Content-Type: application/xhtml+xml");
echo "<?xml version='1.0' encoding='iso-8859-1'?>\n";
}
<!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">
Edit : j'ai aussi ça quand je veux visualier la page
"Parse error: parse error, unexpected T_STRING in D:\serveur\site\antoine\index.php on line 4"
Dernière modification par Antoinei le 01 mai 2004, 18:38, modifié 1 fois.
Oui, le doctype tu dois le mettre en dehors du php

Code : Tout sélectionner
<?php if( stristr($HTTP_SERVER_VARS["HTTP_ACCEPT"], "application/xhtml+xml") )
{
header("Content-Type: application/xhtml+xml");
echo "<?xml version='1.0' encoding='iso-8859-1'?>\n";
}
?>
<!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">
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités