Aller au contenu

xhtml 1.0 strict et sessions php


Sujets conseillés

Posté

Bonjour à tous !

Mon site fonctionne avec DotClear et j'ai pour objectif de le rendre valide XHTML 1.0 strict. Mais voilà j'utilise les sessions php et lors de la validation de la page j'ai le message d'erreur suivant et je ne sais pas trop quoi faire. Merci pour votre aide.

This page is not Valid XHTML 1.0 Strict!

Line 60, column 98: cannot generate system identifier for general entity "PHPSESSID"

...07/28/75-tutorial-flash-actionscript&PHPSESSID=ebeb11d26c83c754cc795c5daf4dc1

An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in "Ampersands in URLs".

Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&" (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and æ are different characters.

Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.

Posté (modifié)

Salut,

J'ai eu le même problème pour mon site. Ceci vient du fait que les esperluettes dans les URL sont interpétées par le parseur XML.

Pour remédier à cela, il faut remplacer les '&" par des '&' dans toutes les URLs, mais je crois qu'avec Dotclear il n'y a pas besoin, à cause du rewriting (?)

Bref pour ce qui est des sessions, tu dois modifier deux paramètres du serveur grâce à la fonction ini_set(). Pour cela, ajoute le code suivant dans un fichier commun à l'ensemble du site (Il doit sûrement y avoir ça dans dotclear non?):

ini_set('arg_separator.input','&');
ini_set('arg_separator.output','&');

PHP rajoutera maintenant ses session_id dans l'URL en les précédant de '&' ce qui rendra le tout valide XHTML Strict ;)

Dis moi si ça résoud ton problème :D

Modifié par Greg

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...