Archive par rédacteur

IE qui joue à cache cache avec l’ajax

applications-other Oui je sais encore un nouveau billet sans le nouveau thème. Mais il est bien fini à 90%. Il manque quelques tests et un petit module qui me tient à coeur.

Bref, en attendant, pas de raison que je ne publie pas! Voici donc une mini astuce, sur un problème rencontré cette semaine, qui m’aura un peu usé, surtout quand on voit la solution finale.

On va donc parler de IE et de l’AJAX.

Lire la suite

Développement Web: Les bons plans de la semaine #10

applications-system Nouvelle semaine qui commence vraiment à sentir les vacances, vu la difficulté que j’ai eu à glaner de bons liens à cliquer la semaine passée. A croire que les gens partent en vacances majoritairement en août…
Bref, j’ai quand même réussi à trouver des choses que je pense intéressantes. Mais en rédigeant la liste, il m’est venu une interrogation:

Lire la suite

Et le gagnant est…

help-about Voilà, le concours pour les 6 mois d’Amicalement Web à pris fin et nous avons un vainqueur qui est…:

Lire la suite

Doctrine et son Behavior Geographical

edit-cut Retour un peu à la technique, mais n’oubliez pas, il vous reste seulement jusqu’à demain pour gagner une BD.

En ce qui nous concerne, avec les annonces faites lors de la dernière Symfony Conference Live, il faut bien commencer à se lancer dans Doctrine. Et c’est l’occasion de découvrir petit à petit cet ORM qui change beaucoup de Propel, pas toujours en bien à mon goût, mais il y a quand même des choses très bien pensées.
En parcourant la doc, je suis donc tombé sur un behavior que j’ai trouvé fort intéressant: Geographical.

Je me suis donc laissé tenté par un test de celui-ci!

Lire la suite

Développement Web: Les bons plans de la semaine #9

computer Voilà qu’on attaque déjà la 2e partie de l’été! Heureux ceux qui ont pas encore pris leurs vacances, dommage pour les autres :D
Quant à ce blog, il a fété la semaine dernière ses 6mois et vous pouvez encore participer au tirage au sort pour gagner une BD pour l’occasion.
Mais revenons à nos moutons, enfin à nos clics de la semaine en l’occurrence.

Lire la suite

6 mois déjà, bilan passé, objectifs futurs et des cadeaux!

internet-group-chat Et oui le temps passe. Déjà 6 mois que j’ai investi les lieux. Du coup ça valait bien quelques chiffres histoire d’illustrer un peu la progression du blog avec deux surprises dont un petit cadeau à gagner!

Lire la suite

Symfony: Personnaliser le nom du fichier lors d’un upload avec sfWidgetFormInputFileEditable

system-software-update On emploie tous je pense, assez couramment maintenant, le widget sfWidgetFormInputFileEditable qui permet de rajouter quelques fonctionnalités à un widget d’upload classique, en l’occurrence visualisation et suppression. Le souci que j’ai rencontré récemment, c’est par contre la personnalisation du nom du fichier ainsi généré.

En effet, par défaut celui-ci est une empreinte sha1 généré aléatoirement, ce qui convient pour la majeure partie des cas, mais parfois ne suffit pas. Mais là encore Symfony étonne par le mécanisme mis en place pour contourner cette problématique, encore faut-il le savoir malheureusement.

Lire la suite

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

system-search Quelques changements dans notre rubrique hebdomadaire. Ceux qui suivent auront deviner de quoi il s’agit.
Première modification, on passe du vendredi au lundi. Pourquoi? Ca me laissera le week end pour faire quelque chose de moins à l’arrache et essayer de voir si c’est parce que ces billets sortent le vendredi qu’ils sont moins lus ou juste moins intéressants.

La deuxième découle de la première, finalement, on aura un lien « lire la suite » histoire d’être sûr de mesurer toutes les lectures. Bref, des détails, rien de bien grave et voici la sélection de la semaine!

Lire la suite

How to: Créer un plugin fckeditor

applications-system Dans le monde du développement web, il y a un domaine où je n’ai pas encore trouvé une recette miracle: La publication de contenu avec un éditeur WYSIWYG. En même temps, la problématique est costaud, faire éditer du HTML à des gens qui ont déjà du mal avec Word, sans qu’ils sachent qu’ils éditent du HTML.

Après avoir définitivement abandonné TinyMCE, car trop usine à gaz et n’en faisant qu’à sa tête, j’ai essayé nicedit comme je vous l’avais signalé dans un bon plan de la semaine. Malheureusement, il reste un peu juste pour certains besoins.
Sur les conseils de Sam, je me suis donc relancé dans une vieille connaissance, FCKEditor, un des plus vieux RTE avec TinyMCE.

Lire la suite

Développement web: Les bons plans de la semaine #7

applications-other Après un retour à Symfony cette semaine, on continue sur notre bonne lancée avec les bons plans du développement web de la semaine. Les vrais nouveautés deviennent de plus en plus en rare en cette période de vacances, donc ne soyez pas surpris que je mette quelques liens plus anciens.
Bon clics!

  • Comment utiliser Firephp
    Tout le monde connait firebug, l’extension Firefox qui a un peu révolutionné le debug web. Et parmi ces plugins les plus connus, on note yslow et firephp qui permet de débuguer du PHP! Voilà donc un tutorial très bien fait pour se lancer.
  • 10 conseils pour écrire en Anglais
    Même si en tant que français, on adore parler et écrire en français, on sait bien que pour se faire une place dans la communauté web des blogs, il devient obligatoire d’écrire son blog en anglais. Pas toujours très facile quand on voit la tête des cours qu’on a pu avoir du collège au lycée. Voici un article très intéressant qui conseille ceux qui voudraient se lancer. Il mériterait par contre une traduction pour le coup ;)
  • Construire un moteur de recherche en PHP
    Ah les moteurs de recherche. Un vaste sujet dans le monde du PHP et je n’avais jamais trouvé une base solide jusqu’à présent. Un très bon article qui va vous montrer les bases pour créer un moteur de recherche sans écrire 10000 lignes
  • QuickFlip
    Voici un nouveau plugin jquery qui permet à la manière d’un panneau publicitaire de permuter 2 images sur une même zone et avec le petit effet qui va bien. Fluide, customisable et léger, il confirme que jQuery a un réel potentiel pour remplacer le flash dans les petites animations.
  • Comment éviter que nos illustrations de code débordent
    Tout bon développeur qui se respecte à déjà eu l’occasion de copier/coller du code dans un de ces billets. Très souvent pour se faire, on utilise la balise <pre> qui à le mérite de ne pas casser une grande ligne (comme ça peut arriver dans du code). Mais du coup, c’est le design du blog qui en pâtit. Alors plutôt que de mettre un scoll, voici un petit snippet jquery qui permet d’élargir ces boites de code sur le survol seulement.
  • Multiselect amélioré en jquery
    Dans un formulaire, il n’est pas rare d’avoir des select à choix multiples. Le problème arrive quand on a beaucoup d’items à l’intérieur. Et bien voilà, un petit plugin qui reconstruit notre select en 2 colonnes (sélectionnés et disponibles) avec un petit filtrage sur la colonne disponible pour retrouver rapidement ces petits. Testé et approuvé par mes soins!
  • mPDF
    Peut-être que vous connaissez vu que c’est relativement ancien, mais personnellement j’ai découvert cette librairie PHP qui permet d’exporter une page html en pdf et en gardant le style! Une solution à beaucoup de casse tête pour mrt
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+