tela-nota

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

Comment lire un fichier Excel contenant des caractères accentués ?

Comment utiliser excel_reader2 pour lire les fichiers Excel contenant des accents : English : How to read an excel file containing accented characters?

Lire la suite...

Compiler Mysql Workbench pour Mandriva 2010

Ci-dessous un petit script permettant de compiler facilement Mysql Workbench pour Mandriva 2010 :

#!/bin/bash
# Script de compilation de Mysql Workbench
# ©Jean-Pascal MILCENT 2010
# Licence : GPLv3
# JPM 2010-08-31 : création du script
# A lancer en root

# Configuration
MWB_VERSION=5.2.27
UTILISATEUR="mon-compte"
DOSSIER_INSTALLATION="/home/$UTILISATEUR/Applications/mysql-workbench"

# Installation des paquets nécessaires
# Pas trouvé exactement (mais fonctionne sans) : libmysqlclient16-dev, g++
echo "Installation des paquets nécessaires...";
    urpmi autoconf automake libtool libzip-dev libxml2-dev libsigc++2.0-devel libglade2-devel \
    libgtkmm2.4-devel libmesagl1-devel libmysql-devel libuuid-devel liblua-devel libpcre-devel \
    task-c++-devel libgnome2-devel libgtk+2.0_0-devel libpango1.0-devel libcairo-devel \
    libsqlite3-devel python-devel libboost-devel libctemplate-devel;

# Téléchargement des sources et décompression
echo "Téléchargement des sources et décompression de l'archive...";
wget http://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-gpl-$MWB_VERSION.tar.gz/from/ftp://mir1.ovh.net/ftp.mysql.com/
tar xzvf mysql-workbench-gpl-$MWB_VERSION.tar.gz

# Création du dossier qui contiendra le logiciel
echo "Création du dossier qui contiendra le logiciel...";
mkdir $DOSSIER_INSTALLATION

# Lancement d'autogen dans le dossier source
echo "Lancement d'autogen dans le dossier source...";
cd mysql-workbench-gpl-$MWB_VERSION
./autogen.sh

# Compilation : indiqué après l'option j le nombre de thread à utiliser
echo "Compilation en cours...";
make -j3 install DESTDIR=$DOSSIER_INSTALLATION
chown -R $UTILISATEUR:$UTILISATEUR $DOSSIER_INSTALLATION

Pour les débutants :

  • copier le code dans un fichier nommé "compilationMWB.sh",
  • modifier les constantes UTILISATEUR et DOSSIER_INSTALLATION du début du script avec vos propres informations,
  • ouvrir une console
  • passer en root (commande su -),
  • se rendre dans le dossier contenant le script (commande cd mon/chemin/),
  • donner au fichier du script les droits d'exécution (chmod 755 compilationMWB.sh),
  • lancer le script : ./compilationMWB.sh
  • à la fin de la compilation vous trouverez l'exécutable de Mysql Workbench dans votre DOSSIER_INSTALLATION

Rechercher et remplacer les esperluettes dans du HTML

Pour rechercher et remplacer des esperluettes dans du HTML en PHP les expressions régulières rendent bien service. Pour faire bien les choses, il faut rechercher toutes les esperluettes à l'exception de celles contenues dans les entités HTML. Voici une expression régulière qui fonctionne bien :
'/&(?!(a-z+|#0-9+|#x0-9a-f+);)/i'

À l'aide de cette expression, il est possible de nettoyer le contenu d'un tableau multi-dimensionnel. Voici deux fonctions (utilisable en tant que méthode de classe) rendant ce service :

function postraiterDonnees(&$tableau) {
	if (count($tableau) > 0) {
		foreach ($tableau as $cle => &$valeur) {
			if (is_string($valeur)) {
				$valeur = remplacerEsperluette($valeur);
			} else if (is_array($valeur)) {
				postraiterDonnees($valeur);
			}
		}
	}
}
	
function remplacerEsperluette($txt) {
	$txt = preg_replace('/&(?!([a-z]+|#[0-9]+|#x[0-9a-f]+);)/i', '&', $txt, -1);
	return $txt;
}

Passage de suPHP en version >= 0.7.0

Passage de suPHP - Home 0.6.2 à 0.7.1

Attention: The configuration syntax for suphp.conf has slightly changed with this release. Be sure to read the documentation before upgrading, because existing configuration files will not work without changing them.

Certe, j'étais prévenu, la syntaxe de suphp.conf avait "slightly changed" avec la version 0.7.0, mais cela aurait quand même été plus rapide d'indiquer quoi exactement plutôt de le laisser deviner depuis la documentation. Bref, si vous êtes coincé par une erreur 500 suite à une mise à jour de suphp, voilà ce qu'il faut changer (en gros il faut protéger avec le caractère " la valeur passée à x-httpd-php ) :

diff suphp-0.6.3/doc/suphp.conf-example suphp-0.7.1/doc/suphp.conf-example  (

< docroot=/
---
> docroot=/var/www:${HOME}/public_html
44c44
< x-httpd-php=php:/usr/bin/php
---
> x-httpd-php="php:/usr/bin/php"
47c47
< x-suphp-cgi=execute:!self
---
> x-suphp-cgi="execute:!self"

Des codes barres 2D pour des étiquettes d'herbiers ?

Le code QR (Quick Response) est un code-barres en deux dimensions qui permet de stocker beaucoup d'informations tout en étant petit et rapide à scanner; son utilisation est gratuite. Il est très pratique pour transformer rapidement et sans erreur une information écrite sous une forme numérique.

On peut imaginer s'en servir pour générer des étiquettes d'herbier : serait stocké dans le code QR le nom scientifique de la plante, qui sera lisible sans faire appel à une base de donnée.

Un exemple ? qrcode.png

A lire depuis son téléphone portable grâce à une application disponible .

(Réponse ici !).

Installation de DbDesigner Fork

Enfin, DBDesigner fonctionne sur mon poste de travail (une Ubuntu Dapper !), et surtout fonctionne l'indispensable fonctionnalité d'ingénierie inverse qui est capable de dessiner un modèle depuis une base de données Mysql et tout cela grâce à cette excellente documentation de JP:AideDbDesigner.

Des stats!

De belles statistiques pour votre blog avec Piwik et Dotclear 2 - Dotclear blog décrit comment installer Piwik pour Dotclear 2. C'est donc fait sur ce blog!

Comment héberger du Javascript pour un accès rapide ?

Je découvre aujourd'hui sur le blog de Jquery (jQuery: » CloudFront CDN for jQuery) qu'il existe la possibilité d'héberger sur le web des données avec des temps d'accès très bas partout sur la planète.

Pour cela, il est nécessaire d'utiliser des services comme Amazon S3 ou le plus récent [Amazon CloudFront|http://aws.amazon.com/cloudfront/). Bien entendu ces services sont payant, mais peuvent être intéressant dans certain cas de figure.a

Toujours dans la même idée, je découvre que Google héberge les bibliothèque Javascript les plus connus (Jquery, Dojo, Mootols...) et permet de les charger sur son site via ses serveurs (c'est donc rapide). En outre, une version de ces bibliothèques une fois hébergé par Google le sera définitivement (du moins ils l'affirment :) ). Pour cela il est nécessaire d'utiliser le Google AJAX API Loader.

Websvn 2.0 comment afficher correctement les caractères accentués?

Vous avez des projets encodés en ISO-8859-15 ou ISO-8859-1 et les accents apparaissent mal dans Websvn 2.0, ce petit article est fait pour vous !

Lire la suite...

Tableau de bord des services Web en biodiversité

L'inlassable Rod Page nous offre une page regroupant tout les services Web fournissant des informations sur la biodiversité, avec un indicateur de disponibilité mis à jour toutes les heures. Un outil indispensable pour qui veut faire du mashup botanique, accessible ici.

Chansons pour Geek

Quelques chansons pour Geek :

Dénormalisation vs Normalisation

The Mother of All Database Normalization Debates on Coding Horror

A retenir : Normalize until it hurts, denormalize until it works. En gros : normaliser jusqu'à ce que se soit trop pénible, dénormaliser jusqu'à ce que ça fonctionne !

Des pistes pour nos bases de données :

  • Utiliser des "materialized views" qui permettent de combiner le meilleur des deux approches.
  • La dénormalisation ne devrait intervenir qu'en derniers recours, après les autres optimisations.
  • La lecture physique est le goulet d'étranglement le plus grand
  • Utiliser le cache applicatif
  • Des queries multiples sont parfoit plus performantes que des énormes jointures.
  • tout
  • et son contraire ...

Voir aussi Denormalization Patterns.

Liste des Wikinis de Tela Botanica

Liste des Wikinis de Tela Botanica

Générée automatiquement.

Merci qui ? Merci JP.

Configuration ODBC sous MAC OS X

Configuration d'une source ODBC sous MAC OS X et son utilisation dans FileMaker Pro 9.

Lire la suite...

Mise en ligne de données avec TapirLink

Utilisation de TapirLink pour mettre à disposition sous forme de service web les données publiques des projets Chorologie Départementale et Carnet en Ligne.

Lire la suite...

Eclipse et Cups sous Mandiva Linux : ouverture des fichiers impossibles

De temps en temps sur ma machine, il devenait impossible d'ouvrir les fichiers de mes projets Eclipse... L'origine du problème liée à CUPS et sa solution sont présentées dans cet article.

Lire la suite...

Caractère de l'encodage CP1252 posant problème en ISO-8859-1

32 caractères de l'encodage CP-1252 (= Windows-1252) ne sont pas compatible avec l'ISO-8859-1. Ce sont les caractères codés de \x80 à \x9f (&#128; à &#159;) : € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ . Nous proposons de mettre en place une translittération de ces caractères...

Lire la suite...

Connexion de la base INPN au GBIF

Une info du Gbif France :

La base de données de l' Inventaire national du Patrimoine naturel (INPN) a été connectée au GBIF, grâce à l'aide de l'équipe du point nodal. Cette base de données d'observations de spécimens, recouvrant la France métropolitaine, est désormais à la 5ème place du classement mondial des fournisseurs de données au GBIF, avec plus de 5 millions d'enregistrements.

iNaturalist.org - Un outil coopératif pour les naturalistes

iNaturalist.org - Un outil coopératif pour les naturalistes  : très Web2 (assemblage de Google Map pour la cartographie , de Flickr pour les photos et Wikipedia. pour le contenu), ce site, en anglais, est un projet de fin d'année de 3 étudiants de Berkeley , de très bonne idée (la timeline notamment), premier objectif : 1 000 observations !

Récupérer des listes de discussion Yahoo sous EZMLM

Nous allons décrire une méthode pour

  • récupérer les messages de liste de discussion Yahoo dans un fichier mbox
  • alimenter et créer l'index d'une liste EZMLM à partir de messages stockés dans un fichier mbox
  • abonner une liste EZMLM à à une liste de discussion Yahoo.

Lire la suite...

- page 1 de 3