Actualité Symfony, Doctrine et Propel

journal-cafe-netbook Comme souvent après la rentrée, on assiste au débarquement des nouvelles versions en tout genre, comme Apple avec Snow Leopard ou Karmic Koala chez Canonical (bon ok eux c’est tous les mois d’octobre :p).

Et forcément, chez les développeurs Symfony, ca frétille d’impatience car chaque jour nous rapproche de la sortie de la version 1.3 de notre framework PHP préféré, dernière release majeure avant le passage en 2.0 (oué pour le coup, ils sont pas encore à la mode).

Je me suis dis que ca valait le coup de faire un petit tour d’horizon des nouveautés attendues (au moins par moi) que se soit Symfony, Doctrine et même Propel:

Lire la suite de Actualité Symfony, Doctrine et Propel

Développement Web: les bons plans de la semaine #15

echec Une grosse semaine de boulot plus tard et quelques jours de vacances à jouer à rock band beatles me reposer un peu, me voilà de retour pour la liste de liens qui sera finalement une liste pour les 10 derniers jours et qui décalera la prochaine à lundi prochain (pas celui qui arrive quoi)!
Pas d’inquiétude, j’ai d’autres surprises pour vous ce lundi et la semaine prochaine.

Lire la suite de Développement Web: les bons plans de la semaine #15

Développement Web: les bons plans de la semaine #14

css-javascript Malgré une grosse semaine passée et à venir, je ne pouvais pas vous priver de la sélection des liens de la semaine! Une sélection qui pour une fois, touche un peu à tous les domaines que je me plait à aborder, on va essayer de garder cet esprit à l’avenir.

Lire la suite de Développement Web: les bons plans de la semaine #14

Mini solution antispam, quand le CSS retourne l’envers du PHP

stop-spam
Dans le monde du web, un seul fléau uni tout le monde contre lui, le spam.

Rien à dire, en plus de ne pas être écologique, on a du mal à y voir un intérêt, pauvres humains que nous sommes. Mais quand vient le moment d’écrire son adresse mail sur un site web qui sera visible par tout le monde, on en tremblerait presque.

Du coup, il existe beaucoup de techniques, l’idéal étant encore de ne pas écrire son adresse mail en toutes lettres sur son site! Mais des fois, cela reste bien pratique. Voici donc une solution très simple à mettre en place, qui sans être parfaite, assure quand même le boulot dans la majorité des cas.

Lire la suite de Mini solution antispam, quand le CSS retourne l’envers du PHP

Yahoo aspire Smushit

smushit SmushIt, j’en ai parlé à mes débuts, c’est un des services web que j’utilise régulièrement. Mais la semaine dernière, j’ai été étonné de voir que l’extension firefox ne fonctionnait plus, le site web aussi semblait dans les choux. La cause? A Yahoo qui avait un peu loupé sa redirection vers la nouvelle URL de ce service.

Lire la suite de Yahoo aspire Smushit

Développement Web: les bons plans de la semaine #13

php-bench Ça commence à sentir (bon?) la rentrée! Les bons liens se multiplient et je commence même à devoir faire du tri. Je pourrais faire des gros listings et les classer par catégorie mais finalement, on sait tous que vous lirez pas tout. Donc autant que je fasse moi même le tri. De toute façon, je fais bien ce que je veux!

Lire la suite de Développement Web: les bons plans de la semaine #13

Veille sécuritaire avec flux RSS (part 1)

Veille sécuritaire

Il existe sur Internet, de nombreux sites de veille sécuritaire permettant de vous maintenir au courant des dernières vulnérabilités découvertes. Si vous utilisez une application open-source (forum, blog, cms …), des visites régulières sur ces sites ou abonnement aux flux RSS, vous permettent de maintenir à jour votre application et minimiser les risques de piratages.

Mais, que vous utilisiez une application web open-source (ou non) à jour, cela n’empêche pas les tentatives d’attaques, c’est pourquoi je vous propose ici un petit script python pour effectuer vous même votre veille sécuritaire.

Cet article est la 1ère partie d’une série de 3 :

  • Part 1: Configuration des logs apache, création de la BDD puis présentation et configuration du script de traitement.
  • Part 2: Script de génération du flux RSS avec présentation détaillées des informations dans le flux.
  • Part 3: Amélioration du script avec des expressions régulières plus poussés, rajout d’options …

Lire la suite de Veille sécuritaire avec flux RSS (part 1)

Une nouvelle recrue, parce qu’il le vaut bien

image-mystere Oyez oyez, un petit billet pour vous informer qu’à compter d’aujourd’hui et pour une durée indéterminée, nous allons accueillir un petit nouveau sur ce blog! Bon ok, il est pas si nouveau que ça, vu qu’il traine dans les couloirs du site depuis quelques temps déjà et dans mes pattes encore plus :D

Lire la suite de Une nouvelle recrue, parce qu’il le vaut bien

Doctrine: quelques petits secrets

doctrine-secret Oui, je commence à parler de Doctrine de plus en plus vu que je commence à l’utiliser à grande échelle au boulot. Et il y a un détail où j’ai encore du mal, c’est l’opacité de cet ORM comparé à son prédécesseur dans Symfony, Propel.

On se rappelle tous (enfin je parle au passé, mais Propel n’est pas mort hein :p) qu’on avait tout à disposition dans le BasePeer de notre modèle, les accesseurs, les modificateurs et quasi toutes les méthodes dont on pouvait avoir besoin. Avec Doctrine, la donne a changé, tant cet ORM est codé différemment.

On se retrouve du coup un peu perdu parfois, sans trop savoir ce qu’on peut utiliser. Et là, il faut bien sûr jeter un œil à l’API Doctrine. Mais on le sait tous, on a pas toujours le temps! Du coup, au travers de mes recherches, j’ai trouvé quelques petites méthodes que j’utilise régulièrement et dont je vais vous parler.

Lire la suite de Doctrine: quelques petits secrets

Développement Web: les bons plans de la semaine #12

bon-plans-12 Le nouveau thème maintenant en place, on va reprendre tranquillement le rythme de publication avec la sélection de la semaine. En manque de nouveautés, j’ai ressorti des vieux dossiers de mes cartons mais que je n’avais jamais eu l’occasion de poster sur amicalement-web (il n’existait pas!).
Mais que ca ne vous empêche pas de faire des retours sur le nouveau thème hein, il reste d’actualité de l’améliorer encore pour le confort de tous ;)

Lire la suite de Développement Web: les bons plans de la semaine #12

PHVsPjxsaT48c3Ryb25nPndvb19hZHNfcm90YXRlPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzE8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTEuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfMjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtMi5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV8zPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS0zLmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzQ8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTQuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzE8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfMjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8zPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzQ8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hbHRfc3R5bGVzaGVldDwvc3Ryb25nPiAtIGN1c3RvbS5jc3M8L2xpPjxsaT48c3Ryb25nPndvb19hdXRvX2ltZzwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fY29udGVudF9hcmNoaXZlczwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fY29udGVudF9ob21lPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jdXN0b21fZmF2aWNvbjwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2ZlZWRidXJuZXJfdXJsPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fZ29vZ2xlX2FuYWx5dGljczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2xvZ288L3N0cm9uZz4gLSBodHRwOi8vd3d3LmFtaWNhbGVtZW50LXdlYi5uZXQvd3AtY29udGVudC93b29fdXBsb2Fkcy8zLWxvZ28ucG5nPC9saT48bGk+PHN0cm9uZz53b29fbWFudWFsPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tLzwvbGk+PGxpPjxzdHJvbmc+d29vX25hdl9leGNsdWRlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fcmVzaXplPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3J0bmFtZTwvc3Ryb25nPiAtIHdvbzwvbGk+PGxpPjxzdHJvbmc+d29vX3RoZW1lbmFtZTwvc3Ryb25nPiAtIFR5cGViYXNlZDwvbGk+PGxpPjxzdHJvbmc+d29vX3RodW1iX2hlaWdodDwvc3Ryb25nPiAtIDEwMDwvbGk+PGxpPjxzdHJvbmc+d29vX3RodW1iX3dpZHRoPC9zdHJvbmc+IC0gMTAwPC9saT48bGk+PHN0cm9uZz53b29fdXBsb2Fkczwvc3Ryb25nPiAtIGh0dHA6Ly93d3cuYW1pY2FsZW1lbnQtd2ViLm5ldC93cC1jb250ZW50L3dvb191cGxvYWRzLzMtbG9nby5wbmc8L2xpPjwvdWw+