NyroBlog
Banniere NyroBlog
Image de Nyro - ?
« février 2007 »
lunmarmerjeuvensamdim
1234
567891011
12131415161718
19202122232425
262728

PhpMyAdmin : Sortie de la version 2.10.0

phpMyAdminLa dernière version de l'appli qui permet de gérer ses bases de données Web est sortie hier en Release.

Une des grandes nouveautés est le Concepteur (ou Designer en anglais) qui permet de faire du Reverse Enginnering d'un simple clic, pour obtenir le MCD de la base de données. Le premier avantage que j'y vois tout de suite : si les tables sont bien faites, avec les clés étrangères existantes, on pourra reprendre des bases de données de quelqu'un d'autre pour en extraire très simplement le MCD, et ainsi commencer à travailler dessus. Le second avantage est pour faire les clés étrangères facilement : en 3 clics, c'est réglé. Et c'est très intuitifs et bien traduit !

Pour ceux qui n'ont pas envie de s'embetter à l'installer mais qui veulent tester, la démo est disponible (Login : root, pas de mot de passe)

Un grand coup de chapeau à toute l'équipe de phpMyAdmin.

Linux : Ecrire sur une partition NTFS

Depuis longtemps, les utilisateurs de Linux et Windows se plaignaient du manque de pouvoir écrire de façon sécurisée et sans aucun problème sur la partition de Windows, du type NTFS, car Microsoft ne partageait pas (comme à son habitude) les spécifications du format de fichiers.

C'est maintenant réglé, avec NTFS-3G qui vient de sortir sa première version finale 1.0.

Je n'ai pas eu l'occasion de tester, mais je ne doute pas de son efficacité. Si certains peuvent nous donner leur retour d'expérience.

Et pour les utilisateurs d'Ubuntu, le tutoriel qui va avec.

Réparer des bases de données MySQL

Il arrive dans certains cas que des bases de données, plus particulièrement des tables, soit rendu illisibles suite à un crash du serveur.

MySQL a tout prévu avant la commande REPAIR TABLE qui permet de récupérer une table crashée, avec généralement une perte de données, la dernière ligne ajoutée (d'où l'utilité des backups récurents).

Rien que ça, c'est bien utile quand on se retrouve dans un phpMyAdmin qui nous sort plein d'erreurs dont ont ne sait pas vraiment d'où elles sortent et dont on ne comprend pas forcément le sens.

Mais imaginez qu'on ait affaire à un serveur dédié avec un nombre conséquent de base de données. Le serveur a crashé, donc on suppose des erreurs sur les tables de toutes les bases. Comment faire pour ne pas avoir à regarder manuellement dans chaque base de données ?

Utilisez la commande mysqlcheck comme suit, à exécuter en SSH par exemple :

mysqlcheck -A --user=USER --password=PASSWORD

Bien sûr, vous aurez pris soin de changer USER et PASSWORD avec ce qui convient, sûrement root pour l'utilisateur.

Ensuite, vous allez voir toutes les tables de chaque base de données défiler, avec la plupart du temps marqué OK sur la ligne, pour vous indiquer qu'il n'y pas d'erreur.

Pour n'afficher que les tables qui sont crashées, vous n'aurez qu'à rajouter un grep :

mysqlcheck -A --user=USER --password=PASSWORD | grep -v "OK"

Enfin, vous n'aurez qu'à exécuter les REPAIR TABLE sur les tables qui ressortent avec des erreurs et vous en aurez terminer. Normalement, la commande mysqlcheck accepte comme paramètre --auto-repair, mais elle n'a pas fonctionnée dans mon cas, je ne sais pas pourquoi.

Vos Header sur NyroBlog

Lorsque je vous annonçai le nouveau design du blog, je vous avais dis que je vous réservais une petite surprise quant à l'image du haut.

Hé bien en fait, c'est très simple : je vous propose d'envoyez vos images pour quelles apparaissent à cet emplacement, après une validation de ma part. Vous y gagnerez un lien sur votre nom et ma gratitude. Les images sont choisies aléatoirement parmi celles validées pour changer à chaque rechargement de page.

Ah, j'oubliai un détail : le lien d'envoi !

Et pour voir ceux qui existent déjà, la Liste des Header est disponible.

Tous les types d'images sont acceptés : photos, dessins, montages, etc... Du moment que la couleur principale est le bleu et qu'elle s'insère bien dans le graphisme du site.

J'attends avec impatiente vos premiers envois.

Je partagerai le code qui m'a permis de faire ça assez rapidement (pas d'administration pour le moment...)

PS : Vous avez déjà vu des choses de la sorte ailleurs ?

Edit : Et c'est Matthieu qui a été le 1er a envoyer une image, avec la belle tête de vache ! Merci à lui.

PHP : utiliser les références

Pour ceux qui ont fait du C++ ou qui savent faire la différence entre référence et valeur, vous pouvez passer au dernier paragraphe pour directement trouver le lien.

Lorsqu'on utilise des variables, celle-ci a besoin d'espace mémoire. L'espace mémoire est adressée, c'est à dire que la valeur de la variable se trouve à telle adresse (ou référence). Autrement dit, une variable pointe sur une ADRESSE, où est stockée véritablement la VALEUR de la variable. En PHP, tous les passages de variable (pour les fonctions, classes ou copie) se font par VALEUR. Etudions

$var = 'abc';
$var2 = $var;

La Première ligne : Lorsqu'on fait ceci, $var est associée à 1 référence mémoire (adresse), dans laquelle on met la valeur 'abc'. La seconde ligne : comme je vous l'ai dit, la copie se fait par valeur. Donc, en faisant ça, $var2 est associée à 1 nouvelle référence, dans laquelle on stocke la valeur de $var, 'abc'. Jusque là, rien de bien compliqué, c'est juste pour être plus clair et que vous compreniez mieux la suite.

Maintenant, si nous faisons ceci :

$var = 'abc';
$var2 = &$var;

(La seule différence est le &, marqueur de la référence) Pour la première ligne, rien ne change évidemment. Pour la seconde, qu'est-ce qu'on fait ? Une nouvelle référence est crée pour $var2, mais au lieu d'y stockée une valeur (celle de $var), on y stocke la référence de $var. Pour le dire différemment, $var2 est un alias de $var, qui pointe tous les 2 vers la même valeur dans l'espace mémoire. Vous suivez ?

Je voulais juste faire ce petit rappel, avant de vous donner l'adresse d'un très bon article de JDNet, qui montre plusieurs exemples qui vous seront très pratique. Peut-être que vous n'en voyez pas l'utilité tout de suite, mais cela pourra vous permettre de vous sortir de mauvaises passes dans certains cas.

Ca m'est arrivé il y a pas très longtemps, et je ne sais pas comment j'aurai fait sans ça.

TinyMce : plusieurs configs de l'éditeur sur la même page

Pendant longtemps, il était impossible (ou du moins, j'ai jamais vraiment cherché) d'afficher plusieurs éditeurs WYSIWYG TinyMce sur la même page, mais avec des configurations différentes.

Les exemples de TinyMce viennent d'être mises à jour, et parmi elles, la 10ème nous montre comment faire simplement, grâce à editor_selector (que je n'avais jamais vu auparavant). Pour le faire fonctionner, il faut que l'élément à mettre en éditeur ai la classe donné par ce paramètre

De plus, l'inverse existe aussi editor_deselector, montré en exemple sur un autre exemple.

Enfin, avec les exemples 7 et 8, on peut facilement faire un load de l'éditeur à la demande lors du clic dans le textarea, et le décharger lorsqu'on en sort avec les événements onBlur et onFocus.

Une bonne nouvelle qui me ravit, car c'est un des éléments qui manquait selon moi à TinyMce, qui est l'éditeur WYSIWYG que j'utilise dans mes admins, pour son aspect pro et sa robustesse.

Nouveau graphisme

Je l'attendais avec impatiente.
Un peu plus de 6 mois après l'ouverture du blog, le voici enfin mis à mes couleurs, à mon image.
Un grand merci à Miho qui l'a fait, avec l'intégration dans dotclear.
Puis, il nous aura fallu plus d'une heure trente pour paufiner tous les détails :
  • Le fond de couleur pour alléger les yeux
  • les barres en bleue dotted
  • et plein de tous petits détails...
Tout ça pour vous livrer ce que vous voyez...

Alors, vous en pensez quoi ?

Et n'ayez pas peur avec l'image du haut, je vous réserve encore une surprise, courant de la semaine prochaine normalement.

1 2 >