Apéro PHP lillois : 22/04/2004

vendredi 16 avril 2004 :: perrick :: PHP :: 4 commentaires :: un trackback

Le prochain apéro PHP lillois aura lieu jeudi 22 avril 2004. Après le Clair Obscur puis le Bel Ouvrage, le rendez de cette fois-ci est L'Amul Solo, 9 rue des arts à Lille. Dès 20h on y parlera PHP, développement web et de tout le reste (peut-être de tempêtes dans un verre d'eau, de bouquins à la 23ème page ou de batailles intergalactiques). Pour vous inscrire, c'est sur le site de tous les apéros PHP. Merci à Greg pour l'organisation.

Générer un fichier RTF à partir de PHP

mercredi 14 avril 2004 :: perrick :: PHP :: 6 commentaires :: un trackback

Sur mon dernier projet intranet, j'ai eu besoin de générer un fichier RTF directement à partir de mon application PHP. Il existe pas mal de librairies ou de docs pour produire un fichier PDF mais peu pour le format RTF. Voici ce que j'ai trouvé avant de me lancer :
- RTF File Generator, une librairie payante que je n'ai pas testé mais qui a l'air de bien fonctionner.
- un article sur PHPBuilder.com
- et ce commentaire qui propose une piste très intéressante (c'est celle que j'ai mis en pratique).

Comme d'habitude, des liens pertinents sont toujours les bienvenus ci-dessous.

Le nouveau site de l'AFUP

lundi 15 mars 2004 :: perrick :: PHP :: aucun commentaire :: aucun trackback

En tant que membre de l'AFUP, ça me fait plaisir de dire que le nouveau site est en ligne : http://www.afup.org/. On en parlait depuis le forum PHP de l'année dernière ! Merci donc à Cyril, Romain, Sébastien et quelques autres (dont votre humble bloggueur ;-).

A noter pour les fans de PHP et/ou d'XP deux rendez-vous. Le premier à Lille, le 25 mars : Apéro PHP et Groupe de praticiens XP. Le seconde à Paris, le 7 avril 2004 : Rendez-vous AFUP autour d'XP.

Bibliothèque PHP : Image_GIS

vendredi 5 mars 2004 :: perrick :: PHP :: un commentaire :: aucun trackback

Via le blog de Sebastian Bergmann, une bibliothèque pour créer des images "géographiques. Encore un truc à tester à l'occasion et en tout cas à garder en mémoire si -- on ne sait jamais ;-) -- un client pointe le bout de son nez avec un projet "géographique".

Apéro PHP lillois : 25/03/2004

jeudi 4 mars 2004 :: perrick :: PHP :: 5 commentaires :: un trackback

Un nouvel apéro PHP est lancé à Lille pour la fin du mois de mars. Rendez-vous donc à tous ceux qui souhaitent découvrir ou approfondir le PHP et toutes les technologies annexes le 25 mars 2004 à partir du 20h au Bel Ouvrage. Après la clôture du Clair-Obscur, on se retrouve donc dans ce bistro tranquille et accueillant situé 4 parvis St Michel. Reste plus qu'à venir : vous y êtes les bienvenus. Et pour vous inscrire, il suffit de se connecter sur le site des apéros PHP.

Qui a dit refactoring avec PHP ?

mardi 2 mars 2004 :: perrick :: PHP :: un commentaire :: aucun trackback

A croire qu'il y a bien une blogosphère qui se répond par post interposé : je tombe aujourd'hui sur un post paru chez Nexen : Cartographie d'une application. On y parle d'un produit en Perl, PHPXref -- un PHP Cross Referencing Documentation Generator.

Je ne l'ai pas encore testé mais mon petit doigt me dit que c'est un projet à suivre pour tous ceux qui veulent faire du refactoring sur leur produit en PHP. En tout cas je connais plusieurs personnes qui attendent les fonctionnalités évoqués par Damien Séguy.

Expressions régulières sans souci : Regex-Coach

mercredi 18 février 2004 :: perrick :: PHP :: un commentaire :: un trackback

Parce que les expressions régulières Perl sont très puissantes et pas toujours aisées à manipuler, Regex-Coach de Edi Weitz permet de gagner un temps fou : vous tapez votre expression régulière puis le texte à tester et automatiquement apparaît en surbrillance le(s) motif(s) recherché(s).

Une bibliothèque PHP pour fichiers multimédias : getID3

vendredi 13 février 2004 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Cela faisait quelques temps que je n'étais pas tombé sur une librairie Open Source en PHP vraiment intéressante. Depuis PHP_WriteExcel de Johann Hanne, découverte en 2002 et qui est passé en version 0.2.2 entre temps. [Note : la version 0.2.1 que j'utilise ne m'a jamais posé de problème mais je m'égare.]

getID3 permet d'extraire des informations intéressantes à propos de fichiers multimédias -- type MP3, AVI, etc : entre autres la taille, la durée, le bitrate, l'artiste, le genre, j'en passe et des meilleurs. Un grand coup de chapeau à James Heinrich donc et à un client de No Parking qui me pose de nouvelles questions.

Et le fait qu'on trouve un fichier de test ne déplait à l'apprenti praticien eXtreme Programming que je suis. Plus là-dessus -- le projet en mode XP -- dans les jours à venir ici ou -- puisque la programmation en binôme se fait à deux ;-) Non ce n'est pas du teasing...

Un agrégateur de blogs PHP

vendredi 23 janvier 2004 :: perrick :: PHP :: 2 commentaires :: aucun trackback

Une initiative de Christian : un agrégateur de blogs autour du PHP, PHP Planet. La plupart de mes lectures quotidiennes dans cet univers des développeurs PHP y sont déjà :
- sebastian's weblog
- Coggeshall.org -=- Musings, Insight, and of course PHP
- PHPDeveloper.org
- 'zlog
- PHP Everywhere
- phpPatterns

Cette initiative me fait penser à celle de Moosh sur phpindex.com avec son tour des blogs 23-01-2007 ou 17-01-2003.

[via : sebastian's weblog]

Une astuce pour se protéger des attaques CSRF

mardi 20 janvier 2004 :: perrick :: PHP :: 2 commentaires :: aucun trackback

C'est dans l'article en ligne du dernier Direction | PHP que je viens de trouver une astuce intéressante pour se protéger des attaques CSRF. Tout d'abord une définition : CSRF = Cross-Site Request Forgeries, il s'agit d'une attaque par simulation de requête HTTP.

Ensuite extrait de l'article : Obligez l’utilisateur à utiliser vos formulaires HTML.

Mes techniques préférées sont celles qui impliquent un secret partagé entre le serveur et l’utilisateur légitime. [...] A chaque fois qu’un utilisateur demande un formulaire, une nouvelle marque est générée et cette marque est sauvegardée sur le serveur (dans la session de l’utilisateur, remplaçant les précédentes) et incluse dans le formulaire comme une variable cachée du formulaire. Ainsi, quand un message est posté, non seulement la marque est comparée à celle de la session de l’utilisateur, mais un temps mort peut également être appliqué pour minimiser davantage le risque.
Le reste de l'article est aussi très intéressant pour ceux qui ne sont pas encore familiers de "sécurité en applications webs". Et l'auteur -- Chris Shiflett -- écrit d'autres choses : un livre, HTTP Developer's Handbook, et un blog que j'ai ajouté à ma liste personnel.

Apéro PHP de janvier 2004

mercredi 7 janvier 2004 :: perrick :: PHP :: 2 commentaires :: aucun trackback

Je profite de ce nouvel apéro PHP -- organisé cette fois par 6 ANUR (alias JMF de Dying Culture) -- pour vous souhaiter à tous une bonne année 2004.

Petit rappel à mettre dans les agendas et les coins de tête : l'apéro aura lieu le mercredi 21/01/2004 à 20:00, toujours au Clair-Obscur. Comme c'est à chaque fois un bon moment autour d'une bière et que la discussion n'est pas toujours "technique", je recommande.

Note du 14/01/2004 : l'apéro est reporté au mercredi 28/01/2004 à 20:00.

Parce qu'il faut mieux en rire

lundi 22 décembre 2003 :: perrick :: PHP :: aucun commentaire :: aucun trackback

Voici un cadeau de fin d'année : une compilation de questions à propos de PHP & Co mise en ligne par Derick Rethans : Assorted Funny User Questions / Comments. Et une parmi mes préférées : Subject: Stupid !!! avec la réponse de Rasmus.

Et au passage un joyeux noël à tous ;-)

Installer une application web le plus simplement du monde

vendredi 12 décembre 2003 :: perrick :: PHP :: aucun commentaire :: aucun trackback

En tant que développeur d'une application web -- openTIME en l'occurence -- je me réjouis de voir apparaître des idées comme celle-ci : Toward the Improvement of Web Application Management. Stuart Herbert y explique -- en anglais -- comment la distribution Linux Gentoo proposera une installation simplifiée d'application web : tout se fera avec une seule ligne de commande et leur fétiche emerge.

Ici, c'est vrai qu'on préfère la distribution Debian : peut-être que bientôt on pourra créer un paquet opentime.deb ?

PS : cet article est inclus dans le magazine php|arch du mois de décembre 2003.

Des photos du forum PHP 2003 à Paris

samedi 29 novembre 2003 :: perrick :: PHP :: 2 commentaires :: aucun trackback

Voici une petite liste récapitulative des photos du forum PHP 2003 chez les uns et les autres :

Forum PHP 2003 : deuxième

jeudi 27 novembre 2003 :: perrick :: PHP :: un commentaire :: aucun trackback

Toujours dans la démarche d'un compte-rendu rapide des différentes conférences auxquelles j'ai pu assister, quelques notes prises en en live :

- Optimisez vos développements PHP avec UML par Sébastien Hordeaux. Ou comment faire de l'UML sans le savoir. C'est intéressant de découvrir une formalisation des "cas d'utilisation" et autre diagramme d'activité. Au niveau des diagrammes de classe -- qu'il est peut-être la partie émergée de l'iceberg UML -- un outil prometteur : WaterProof::UML (par le développeur de PHPEdit). Particulièrement intéressante les fonctions aller ET retour entre le diagramme UML et la classe PHP.

- PostgreSQL & PHP : l'alternative par Stéphane Mariel. Pour un utilisateur avancé de MySQL -- on y reviendra -- j'ai découvert des fonctionnalités assez originales d'une base de données, je veux parler des points et distances qui composent une application "géographique". Autre découverte, la possiblité d'écrire des procédures stockés directement en PHP.

- Gérer les erreurs en PHP par Frédéric Bouchery. Quelques notes pour aller encore plus loin sur ce qu'on fait à ce niveau dans openTIME : relire la doc sur les "assert_options" et penser "autorisation" au lieu de "blocage". C'est pas la première fois que je croise ce passage d'une "black-list" à "white-list" mais ça fait toujours du bien de se le redire.

- Héberger un projet PHP par Damien Seguy. Etant donné que je n'ai jamais eu à administrer des configurations web à haut, voir très haut traffic, c'est uniquement informatif pour moi. Par contre une anecdote très pertinente sur l'utilisation de l'erreur 404 effectué par Rasmus Leedorf -- ou comment poser la question à l'envers pour être super efficace : il utilise une erreur 404 pour créer un fichier demandé dynamiquement. Ensuite le fichier existe et l'erreur 404 disparaît automatiquement. Au bout d'un temps X, je peux effacer mon répertoire avec tous les fichiers créés à la volée : ça s'appelle un cache dynamique (ou paresseux).

- Régles de sécurité pour PHP par Alain Thivillon. On y a beaucoup parlé du "vieux" problème lié au "registar_global". Dommage parce que le concept -- issu de Perl -- d'avoir une variable "tainted" est assez intéressant : en gros, une option permet de rendre inutilisable directement toute variable saisie par l'utilisateur de l'application. Un traitement préablable est obligatoire.

- MySQL 5 par Michael Carney et Guilhem Bichot. Une présentation très drôle pour un public acquis, exigeant ET français : comment utiliser les procédures stockés dans MySQL 5 pour supprimer un jour de congés. Désolé pour les belges, les suisses (et d'autres ?) qui n'ont peut-être pas apprécié le pied de nez à M. Raffarin.

- PHP 5 Overview (for developers) par Zeev Suraski. Pas de grande nouveauté de la part de Zeev à part peut-être que la fonction __autoload en OOP, l'ajout de fonction PHP dans une commande SQL vers SQLite et l'éventualité d'une couche d'abstration en C pour un futur plus ou moins proche (je me demande si John Lim ne serait pas là-dessous : on en reparlera).