novembre
2007
Mpff, je viens de tomber sur le schéma général de traitement d’une requête HTTP. Vraiment superbe, très compréhensible, à jour (HTTP/1.1) et sans erreur (semble-t-il). C’est un diagramme d’activité UML, qui part de la requête, jusqu’à la réponse. Or, des codes de réponse HTTP, il en existe des 10aines (selon les surcouches du protocole, comme WebDav), et des méthodes : 8 (sans surcouches). Voyez ce très généreux diagramme, qui pèse la bagatelle de 750Ko … […]
novembre
2007
Le code d’erreur E_STRICT n’est actuellement pas inclu dans E_ALL. Il le sera en PHP5.3 et PHP6, mais il sera sindé en 2. E_STRICT repèrera toutes les erreurs de conception dans le code, et devrait générer une erreur de type E_ERROR, soit fatale (arrêt immédiat du script) En revanche, le nouveau E_DEPRECIATED lui, génèrera des E_NOTICE, au sujet de comportements dépérciés et amenés à disparaitre. Voici un concept interessant, regardez : <?php class a { […]
novembre
2007
Actuellement, si vous utilisez mysql sous PHP, par un des 3 moyens classiques de le faire : l’extension mysql, mysqli ou pdo_mysql, alors PHP utilise la librairie système libmysql : la Mysql Client Library; soit l’API qu’offre mysql pour des programmes principalement écrits en C. Mais une nouvelle librairie système va voir le jour, la mysqlnd : Mysql Native Driver. Ce driver a été entièrement re-développé, pour PHP, et fera son apparition avec PHP5.3, et […]
novembre
2007
Voici un petit rappel : n’affichez jamais PHP_SELF sans la sécuriser (htmlentities). De manière plus générale, n’affichez jamais, de manière brute, une donnée externe, quelque soit sa source. Tout ce qui vient de l’exterieur, est susceptible d’etre altéré; tout : $_SERVER[], $_COOKIE[], $_FILES[] aussi, $_GET[],POST[](REQUEST[] donc) bien entendu, $_ENV est plus discutable.(Sans oublier l’environnement ajascent : base de données, programmes, réseau et flux …) Un code du style <?php echo $_SERVER[‘PHP_SELF’] ?> autorise une injection […]
novembre
2007
Avant de commencer, je précise que mysql est une extension vieillissante dans PHP. PHP5 a vu apparaitre l’extension mysqli (i = improved), qui je rappelle offre un double style ( objet et procédural fonctionnel ), permet de profiter des nouveautés de mysql4.1 (et plus) : transactions, requêtes préparées; et de plus, elle s’avère plus rapide et efficace que sa vieille soeur mysql. PDO permet aussi d’interfacer efficacement avec une base de donnée mysql (entre autres). […]
novembre
2007
Un nom bien barbare qui signifie Open Web Application Security Project et Web Application Security. Une belle conférence qui s’est tenue récemment aux USA, des photos sont disponibles ici On peut y lire les programmes des journées. Bien entendu Jeremiah Grossman (de WhiteHat Security), RSnake et même Samy Kamkar, étaient présents. Samy a d’ailleurs donné une conférence sur la son fameux ver MySpace Un gros nids mondial de spécialistes de la sécurité du web, vous […]
novembre
2007
J’ai trouvé un petit test de vitesse (benchmark) récent des méthodes magiques de PHP5. Sont testées __get(), __set(), __call() ; mais aussi call_user_func() ainsi que sa soeur call_user_func_array(). Je vous livre une partie de la conclusion : (…)All of PHP 5’s advanced object-oriented features have a cost, and sometimes that cost is non-trivial. Does that mean we should avoid using them? Of course not! Magic methods, iterators, ArrayAccess, and the like make solving certain types […]
Commentaires récents
Archives
- novembre 2010
- août 2010
- juillet 2010
- juin 2010
- mai 2010
- avril 2010
- mars 2010
- février 2010
- janvier 2010
- décembre 2009
- novembre 2009
- octobre 2009
- septembre 2009
- août 2009
- juillet 2009
- juin 2009
- mai 2009
- avril 2009
- mars 2009
- février 2009
- janvier 2009
- décembre 2008
- novembre 2008
- octobre 2008
- septembre 2008
- août 2008
- juillet 2008
- juin 2008
- mai 2008
- avril 2008
- mars 2008
- février 2008
- janvier 2008
- décembre 2007
- novembre 2007
- octobre 2007
- septembre 2007
- août 2007
- juillet 2007
- juin 2007
- mai 2007
- avril 2007
- mars 2007
- février 2007