Chez Xavier

Home / This Page Is Valid XHTML 1.0 Strict !

Excuse me, I think I'm naked: on a wall of Barcelona.

Excuse me, I think I'm naked: on a wall of Barcelona.

"This Page Is Valid XHTML 1.0 Strict!". C'est pour avoir le plaisir de lire ces quelques mots que je me suis lancé il y a quelques semaines dans l'écriture plus ou moins justifiée de plusieurs centaines de ligne de code. Le désir de mettre en place un système de droits sur mon site m'a conduit en début d'année à utiliser les sessions de PHP. Le bonheur aurait été complet si mon hébergeur - OVH, n'avait pas configuré ses serveurs de telle sorte que l'identifiant de session soit passé par url. Si PHP5 se veut proche des standards du web, ce n'est malheureusement pas le cas de PHP4. Par défaut, la réécriture des urls est faite de façon bien cavalière, notamment en ce qui concerne l'éperluette (symbole &), caractère spécial pour HTML (désignation d'une entité). J'ai tenté de corriger certains défauts de la réécriture en employant les directives suivantes, mais le code produit était toujours non conforme :

et

<IfModule mod_php4.c>
php_value session.use_trans_sid 0
</IfModule>

Bref, après un développement rapide et aisé utilisant les sessions natives de PHP4, je me suis rendu compte que les sessions php et le respect strict des standards du Web étaient tout bonnement impossibles à concilier dans ma configuration (!). D'autre part, la solution du passage des id de session par url étant loin de me convenir pour des raisons de sécurité, j'ai choisi de recoder un système de session - en PHP - qui stocke l'identifiant de session dans un cookie. Les variables de session, elles, ne sont évidemment situées que sur le serveur. C'est ainsi que fut écrite la classe de sessions. Le choix d'employer des fichiers XML - et de développer la classe DOM/XML correspondante - pour stocker les données de session relève plus de l'exercice de style que de la franche nécessité. A vrai dire, l'emploi de tables MySQL aurait sans doute facilité l'affaire.

Conclusion : Je dispose maintenant d'une librairie de session qui me rend indépendant des options activées chez mon hébergeur. Pour la librairie DOM/XML, j'ai tout au plus besoin que le support des parseurs XML, natif dans PHP4, ne soit pas désactivé. Grâce à cette librairie, je peux maintenant coder facilement de nombreuses applications XML. Un premier exemple concerne un script de présentations, que voici en action (présentation sur la politique des moteurs de recherche, en allemand, à voir de préférence avec un navigateur conforme aux standards). Le prochain objectif pour ce site va concerner une utilisation plus poussée de xml, afin de me libérer de l'emploi des bases de données...

En parallèle à ce codage intensif mais néanmoins trop épisodique, j'ai commencé la traduction de "RDF : Concepts and Abstract Syntax". Et je regarde avec intérêt l'avancée du site francophone du Web sémantique, websemantique.org.

  • written on: 2004-02-15