Le Journal de Nikrou

Aller au contenu | Aller au menu | Aller à la recherche

mardi 13 septembre 2011

Abstraction de base de données

Certains n'ont toujours pas compris l'intérêt de faire une abstraction de base de données. Non seulement cela rend l'ensemble du projet compatible avec plusieurs moteurs de base de données mais cela peut aussi simplifier la vie du développeur.

Voici un petit exemple pour en comprendre un petit peu mieux l'intérêt ...

Lire la suite...

samedi 28 mai 2011

Une perle de développeur

En lisant le code de certains projets, on apprend souvent de bonnes pratiques, on y trouve de bonnes idées, des modèles de conception,... Mais on peut aussi y trouver une perle. Récemment, j'ai trouvé le bout de code suivant dans un fichier visiblement inclus sur toutes les pages du site :

<?php
echo utf8_encode('Une phrase comprenant des accents tels que é ou à ou è');
?>

Pour ceux qui ne connaissent pas bien PHP, la fonction utf8_encode convertit une chaîne de caractères codée en ISO-8859-1 vers UTF-8.

Quelle bonne idée de faire cette conversion à chaque fois !

samedi 9 avril 2011

Un caddy pour piwigo

Il y a quelques semaines, je me demandais s'il était possible de faire des plugins pour piwigo ou dotclear en se faisant payer. Et bien c'est possible !

Lire la suite...

samedi 12 février 2011

Qu'est-ce qu'un logiciel libre ?

Pour reprendre la définition de wikipedia, un logiciel libre est un logiciel dont l'utilisation, la modification, la duplication (pour le diffuser) sont permises aussi bien légalement que techniquement. Sans rentrer dans les détails d'une licence ou d'une autre, les termes sont parfaitement clairs. 

Ce n'est visiblement pas aussi clair pour tout le monde... 

Lire la suite...

jeudi 10 février 2011

Mettre à jour les traductions d'un module drupal

Lorsqu'on développe un module drupal, les traductions ajoutées au fur et à mesure ne sont pas prises en compte automatiquement. drupal ne prend en compte les traductions d'un module que lors de l'installation de celui-là. En cours de développement cela peut rapidement devenir pénible (pour rester poli !) de devoir installer/déinstaller le module à chaque mise à jour...

Lire la suite...

mercredi 8 décembre 2010

Compilation de PHP5 sur itaninium 64 bits

La compilation de PHP5 sur un serveur itanium 64 bits n'est pas une mince affaire. Pour corser le tout, le système d'exploitation est une RHEL 5. La compilation semble bien se passer. Je peux lancer le serveur (apache 2) et je vois même la page phpinfo qui semble correcte. Dans la foulée j'essaie d'installer une application et là c'est le drame ! Le moindre script provoque un "Segmentation fault" d'apache et la mort du processus. Et côté navigateur on a le droit à une erreur "Document Contains No Data".

Lire la suite...

samedi 6 novembre 2010

Plugin externalLinks en version 3.2

Le plugin externalLinks que je viens de publier très récemment passe directement de la version 0.2  à la version 3.2. 

Lire la suite...

vendredi 15 octobre 2010

Ouvrir les liens externes dans une nouvelle fenêtre.

Je viens de terminer une nouvelle extension pour dotclear : externalLinks. Ce plugin permet d'ouvrir les liens externes dans une nouvelle fenêtre de manière propre et surtout automatique.

Lire la suite...

samedi 18 septembre 2010

Appeler une tâche symfony depuis une autre tâche

Pour faciliter l'administration de votre site que vous avez bien entendu réalisé avec symfony vous faîtes des tâches. Un exemple de tâche est par exemple la suppression régulière des personnes qui se sont inscrites sur un site mais n'ont jamais confirmé leur email en cliquant sur un lien de validation. Pour rester dans l'esprit DRY, on ne duplique aucune partie de code et on peut être améné à vouloir appeler une tâche depuis une autre...

Lire la suite...

mercredi 25 août 2010

Autoriser les visiteurs de votre galerie à tagger vos images

Vous utilisez piwigo pour présenter vos photos au monde entier. Vous taggez vos images pour offrir une navigation alternative. Mais c'est une tâche longue lorsqu'on a beaucoup de photos. Et si vos visiteurs vous aidaient ?

Lire la suite...

mardi 29 juin 2010

Migration vers un nouveau Kimsufi - deuxième étape

La deuxième étape de la migration de mon nouveau serveur, après les déclaration DNS sur l'ancien serveur, est l'installation de tous les services sur le nouveau serveur.

Lire la suite...

samedi 26 juin 2010

Pourquoi faut-il bannir l'arobase de tout code PHP ?

Nombreux sont les développeurs (débutants ou non) qui utilisent l'arobase (@) pour masquer les erreurs. C'est un peu cacher la misère et c'est surtout un énorme problème lorsqu'il s'agît de trouver un bug dans un code où fleurissent les arobases.

Lire la suite...

dimanche 6 juin 2010

Préparation des photos pour mise en ligne

J'utilise Piwigo pour présenter mes photos à ma famille, mes amis,... L'application fournit tout ce qu'il me faut pour les présenter mais pour ne pas surcharger le serveur de mon hébergeur je prépare mes photos avant de les envoyer sur le serveur...

Lire la suite...

mercredi 19 mai 2010

Une nouvelle version majeure de Piwigo

Piwigo est un logiciel permettant de gérer facilement sa propre galerie photos. 

Lire la suite...

mardi 26 janvier 2010

Calcul d'écart-type avec sqlite

SQLite est une bibliothèque qui propose un moteur de base de données. Le grand intérêt de SQLite est que toute la base tient dans un unique fichier. SQLite implémente en grande partie le standard SQL 92 mais certaines fonctions sont manquantes. Par exemple les fonctions mathématiques sont simples et il n'y a pas de fonction de calcul d'écart type.

Lire la suite...

vendredi 17 avril 2009

symfony : hydrater un objet à la main

En utilisant symfony, on ne fait plus réellement de sql du fait de la couche d'abstraction ORM (Propel ou Doctrine). On ne travaille qu'avec des objets. Cela facilite grandement la vie et contribue pour une grande part à la rapidité de développement. Mais cela ne répond pas toujours à tous les besoins...

Lire la suite...

jeudi 26 mars 2009

Récupérer une liste d'éléments par leur identifiant en choisissant l'ordre de tri.

Lorsqu'on sélection une liste d'éléments par leur identifiant, on veut pouvoir les récupérer suivant un certain ordre. Cet ordre peut-être trivial à réaliser si on trie sur un autre champ, par exemple par date, ou par ordre croissant ou décroissant de cet identifiant. Mais si on veut récupérer les éléments dont les identifiants sont 15, 17 et 20 dans l'ordre 17, 20 et 15, ce n'est pas aussi simple.

Lire la suite...

mercredi 4 juin 2008

Ajouter automatiquement le bon auteur à une classe dans symfony

La ligne de commande de symfony permet de générer un nouveau module avec une arborescence et des fichiers basés sur des modèles. Si on ne fait rien de particulier, Fabien est alors l'auteur de tous les fichiers php. Il est fort mais quand même !

Lire la suite...

dimanche 18 mai 2008

Des plugins, des plugins, oui mais pour dotclear

En regardant la liste de mes plugins, je me suis apperçu que je commençais à en avoir pas mal !

Lire la suite...

jeudi 15 mai 2008

Créer une nouvelle tâche pake dans symfony

La ligne de commande dans symfony fournit de nombreuses facilités pour créer des tâches usuelles et parfois complexes comme créer un nouveau projet, créer une nouvelle application, vider le cache, ...

Ces différentes tâches ne sont en fait que des fonctions php invoquées via la ligne de commande. Il peut s'avérer intéressant d'en ajouter.

Lire la suite...

- page 1 de 3