Coding FAQ

Jump to: navigation, search

Pourquoi tout passe par index.php ?

Plusieurs raisons ont conduit l'équipe d'OF à choisir la solution de "l'url unique".

Tout d'abord pour un problème de sûreté :

  • le fait d'avoir un seul fichier accessible en racine (en fait il y en a plusieurs mais tous à la racine) permet de protéger plus facilement les sous-répertoires (avec des "deny from all" par exemple). Une exception cependant : les répertoires img et javascript.
  • cela permet également d'avoir une entrée unique et dont la maintenance de la sécurisation est plus facile à mettre à jour.

Au niveau php c'est également plus simple car cela règle le problème des chemins d'accès pour les require_one. Si on acceptait d'avoir des accès aux sous-répertoires, les scripts php ne sauraient plus quelle est la racine du site. Dans ce cas, il est très difficile d'offrir une solution de recherche de racine qui tourne sur des serveurs différents.

Cela permet de contrôler plus facilement les allées et venues des utilisateurs et cela évite qu'ils référencent une adresse qui peut potentiellement être modifiée. Cela simplifie également sa vie.

Enfin, cela permet d'avoir une url dans la barre d'adresse qui conserve une certaine simplicité.

Why the AND operator in the need attributes of the action.xml file is a * versus a & ?

Because it's not possible to write the & caracter in an xml file (you only have the right to use & a m p ; )

How to fix "undefined prefix php" bug ?

If you have this type of message in an html page result:

Warning: XSLTProcessor::transformToXml() [function.XSLTProcessor-transformToXml]:
xmlXPathCompOpEval: function functionString bound to undefined prefix php
in D:\php\of2\classes\XSLtransform.php on line 59

It comes from an XSLT page where you have to add to the <xsl:stylesheet> element following attributes:

xmlns:php="http://php.net/xsl"
xsl:extension-element-prefixes="php"