Accueil

GIT : merger 2 commits

Ajouter des fichiers à un commit déjà existant ou fusionner deux commits


12 novembre 2014

Vous souhaitez attacher vos nouvelles modifications au dernier commit de votre branche :Ajouter mes fichiers à un commit déjà existantgit commit --amendVous avez deux commits déjà créés, vous souhaitez les fusionner pour n'en laisser qu'un :Fusionner deux commits ... lire la suite

Nginx : mettre un serveur par défaut

Lancer une page d'erreur si aucun serveur ne correspond


16 novembre 2014

Nginx a, par défaut, un comportement très déroutant en ce qui concerne les noms de domaines ou sous-domaines qui n'existent pas. Ainsi, si le DNS renvoie plusieurs domaines vers votre nginx (domain1.com, domain2.com, *.domain1.com etc...) et que certains de ces domaines ne sont pas pris en charge ... lire la suite

MySQL ON DUPLICATE KEY UPDATE : insérer ou mettre à jour une ligne

Gérer les insertions de doublons avec MYSQL.


09 novembre 2014

La syntaxe MySQL ON DUPLICATE KEY UPDATE permet de mettre à jour une ligne si une violation de contrainte d'unicité est détectée lors d'un INSERT.Utilisation de ON DUPLICATE KEY UPDATEmysql> CREATE TABLE IF NOT EXISTS `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` var ... lire la suite

MySQL : une table pivot dynamique

Comment transformer les lignes d'une table en colonnes ?


26 octobre 2014

Ce tutoriel a pour but de réaliser une table pivot dynamique pour MySQL.Qu'est ce qu'une table pivot ?La table pivot (en anglais pivot table ou crosstab) est une technique pour faire pivoter une table verticale en table horizontale. En agrégeant les bonnes données, les lignes de la t ... lire la suite

PHP : formater un tableau en CSV

Comment convertir un tableau PHP dans le format csv ?


12 octobre 2014

PHP dispose nativement de plusieurs fonctions pour manipuler le format CSV : fgetcsv, fputcsv, str_getcsv etc... La fonction str_getcsv est très pratique pour obtenir un tableau PHP à partir d'une ligne formatée en CSV. Malheureusement PHP ne possède pas encore de fonction "str_putcsv" pour fair ... lire la suite

SQL : faire un select sur une liste de valeurs

Comment jouer une requête directement sur des valeurs qui ne sont pas dans une table ?


12 octobre 2014

Voici comment réaliser une requête sur une liste de valeurs en SQL.PostgreSQL et Microsoft SQL ServerSELECT DISTINCT * FROM ( VALUES ('valeur1'), ('valeur2'), ('valeur3'), ('valeur2'), ('valeur4') ) AS nom_table(nom_colonne)MySQL et la plupart des autres SGB ... lire la suite

MySQL : créer une table à partir d'un select

Comment créer une table à partir des données d'une autre table ?


12 octobre 2014

Voici comment créer une table à partir d'une requête SELECT avec MySQL.Créer une table avec un selectCREATE TABLE nouvelle_table AS SELECT champ1, champ2 FROM table_source;A bientôt ! :) ... lire la suite

MySQL : copier une table

Comment copier le squelette d'une table et ses données sous mysql ?


12 octobre 2014

Voici comment copier une table avec MySQL.Copier le squelette d'une tableCREATE TABLE nouvelle_table LIKE table_a_copier;Recopier les données d'une table à une autreINSERT nouvelle_table SELECT * FROM table_a_copier;A bientôt ! :) ... lire la suite

GIT : Afficher la branche courante dans le prompt

Vous en avez marre de vous tromper de branche ?


20 août 2014

Voici comment afficher la branche GIT courante dans le prompt lorsque vous visitez un dépôt. Le code ci-dessous est à copier à la fin du bashrc.Afficher la branche GIT dans PS1function parse_git_branch { git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e "s/* \(.*\)/[\1]/" } ... lire la suite

Couper une vidéo ou une musique sous linux

Découper une vidéo en ligne de commande avec avconv


08 juillet 2014

Pour couper une vidéo en ligne de commande linux, les principaux outils sont FFmpeg et l'un de ses forks : avconv.Découper une vidéo en ligne de commande# installation de avconv apt-get install libav-toolsavconv -i video_a_couper.mkv -vcodec copy -acodec copy -ss 00:46:30 -t 490 v ... lire la suite

Enlever les balises HTML

La fonction strip_tags en ligne pour supprimer les balises d'un texte


17 juin 2014

... lire la suite

Qu'est ce qu'une closure ?

Quelle est la différence entre une closure et une fonction anonyme ?


25 juin 2014

Cet article, qui n'est pas spécifique à un langage particulier, a pour but d'expliquer ce qu'est une closure et la différence avec une fonction anonyme.Avant tout, sachez que tout le monde n'est pas d'accord sur le sujet et que, par exemple, mon avis est différent de ce que vous pourriez l ... lire la suite

Le design pattern stratégie

Choisir dynamiquement quel algorithme exécuter


10 juin 2014

Le design pattern stratégie (strategy en anglais) permet de choisir dynamiquement un algorithme à exécuter en fonction d'une situation.Prenons l'exemple d'un web-service qui doit retourner une réponse formatée dans différents formats : xml, json etc...Choisir le format de retour d' ... lire la suite

Le design pattern chaîne de responsabilité

Effectuer plusieurs actions indépendantes sur un objet


09 juin 2014

La chaîne de responsabilité (chain-of-responsibility) est un design pattern qui permet de faire passer une entité (objet, tableau etc...) à travers une série de fonctions qui vont chacune réaliser une action dessus. Il existe plusieurs variantes de la chaîne de responsabilité et nous allons en vo ... lire la suite

Le design pattern décorateur

Modifier les fonctionnalités d'un objet sans modifier sa classe ni l'hériter


05 juin 2014

Le design pattern décorateur (decorator en anglais) permet de modifier / surcharger / améliorer les fonctionnalités d'un objet sans devoir en modifier la classe ou en hériter. Le décorateur agissant en tant que wrapper (objet qui en enveloppe un autre) sur l'objet dont il doit étendre les foncti ... lire la suite

Comment envoyer un mail en ligne de commande ?

La commande mail en bash pour utiliser dans un script shell.


04 juin 2014

Pour pouvoir utiliser la fonction mail de linux, il faut avoir configuré au préalable un serveur de messagerie : postfix, sendmail etc...Envoyer un email avec la commande mail de linux# Ecrire un message directement.echo "mon message" | mail -s "le sujet du mail" "destinataire1@d ... lire la suite

RSYNC : Comment synchroniser des fichiers à travers une connexion ssh ?

Envoyer un fichier sur une machine distante grâce à rsync en SSH ou en mode démon


04 juin 2014

Rsync est un logiciel de synchronisation de fichiers entre une ou plusieurs machines. Rsync permet de transférer des fichiers via un protocole de shell distant (rsh, ssh) mais il peut aussi fonctionner en mode client / serveur démon. En mode démon, rsync utilise son protocole natif pour le trans ... lire la suite

MySQL REPLACE : insérer ou mettre à jour une ligne

Comment insérer une nouvelle ligne ou la mettre à jour si elle existe déjà avec MySQL ?


30 mai 2014

La syntaxe MySQL REPLACE permet d'insérer une nouvelle ligne si la clé fournit n'existe pas ou de la mettre à jour sinon.Insertion d'une ligne avec replacemysql> REPLACE INTO test (id, name) VALUES (1, 'nico'); Query OK, 1 row affected (0.02 sec)mysql> SELECT * FROM test; ... lire la suite