Deblan blog

Simon Vieille

IT director at Zenitude Groupe, symfony expert and debian addict

Le quiphe des inondations, la découverte du siècle !

  • Moi

A la mi-août, j'ai eu droit aux inondations...Eh oui, quelle joie de se retrouver les pieds dans la flottes, avec 50 cm d'eau sous les couilles :D

Cela dit, ça permet de faire le vide dans le garage et de récupérer du matériel presque mort chez les voisins.

Pour ne pas déroger à la règle, on a fait le tour du pâté de maison et une sympathique voisine nous a donnée quelques ancêtres de pc qu'on a décidé de démarrer aujourd'hui xD

Mise à part une ou deux carte réseau HS et des cartes vidéos à l'agonie, on pourrait presque en faire des bêtes de course :-°

On a d'ailleurs découvert un disque dur de 127...MB xD La classe non ?

Allez, quelques photos...

Séries-sources V3 est là !

  • Moi

Et voila, comme promis, la nouvelle version est ouverte à tout le monde :p !

Venez nombreux !

Lien relatif à l'article :

Séries-sources prépare une nouvelle version !

Après une petite semaine tranquille sur Séries-sources, Anubis Lockheart explique pourquoi le site était en mini hibernation.

[...] Mais ce n'est pas tout car la plus importante des raisons est que Séries-Sources va prochainement passer sa version 3.0 !
Principalement un changement très radical du design qui se rapprochera plus des sites "perso" (évidemment comme sa c'est difficile à expliquer). [...]

Anubis Lockheart

En effet, ça fait un peu plus d'une semaine que nous travaillons sur un tout nouveau design, qui est simplement mieux a nos yeux. Encore quelques finissions techniques, et bientôt un séries-sources tout neuf !


Styler jeuxvideo.com

Ce weekend et ce soir, je me suis fais plaisir a travers la conception d'un script en js permettant de changer le design de jeuxvideo.com.
En reprenant les feuilles css des différentes pages machines du site, et en y ajoutant celles que thymos avait fait pour notre ancien mod, plus besoin de passer par la grosse moulinette en php que nous avions codé.

Un bout du code :
if(document.getElementsByTagName('head')[0]) {
 var body_ = document.getElementsByTagName('head')[0];
 style = document.createElement('style');
 style.type = 'text/css';  
 if(styles['defaut']) {
  if(styles['defaut'][0]) {
   css+= '@import url("'+styles['defaut'][0]+'");'+"n";  
  }
 }  
 if(modstyle) {
  if(styles[modstyle]) {
   if(styles[modstyle][0]) {
    css+= '@import url("'+styles[modstyle][0]+'");'+"n";  
   }
   if(styles['defaut'][1]) {
    css+= '@import url("'+styles[modstyle][1]+'");'+"n";  
   }
  }  
 }
 css+= '@import url("http:/*/www.geneweb.fr/aide-jv/interfaces/fofo.css");'+"n";
 style.innerHTML = css;
 body_.appendChild(style);
}

Enjoy :)


Bien utiliser empty() !

Je ne compte même plus le nombre de bouts de code que j'ai lu et où l'utilisation de empty() était inutile et foireuse !
empty() retourne false si ce qu'on test vaut :

  • "" (une chaine vide)
  • 0, null ou false
  • "0" (en tant que chaine de caractère)

Pas mal de monde utilise empty() pour tester si des données postées dans un formulaires sont vides ou pas, or, empty() retourna true si des espaces ont été insérés.

<?php

$test_1 = "";
$test_2 = '';
$test_3 = " ";
$test_4 = ' ';

if(empty($test_1))
  echo '$test_1 vide', "\n";
else
  echo '$test_1 non vide', "\n";


if(empty($test_2))
  echo '$test_2 vide', "\n";
else
  echo '$test_2 non vide', "\n";


if(empty($test_3))
  echo '$test_3 vide', "\n";
else
  echo '$test_3 non vide', "\n";


if(empty($test_4))
  echo '$test_4 vide', "\n";
else
  echo '$test_4 non vide', "\n";
?>
Résulat :
$test_1 vide
$test_2 vide
$test_3 non vide
$test_4 non vide

Il faut donc l'utiliser autrement...ou même prendre autre chose si on veut tester des champs de formulaires.

On pourrait dégager les caractères d'échappements (retours à la lignes, espaces, tabulations...) et pour cela, la fonction magique est trim() :

<?php
if(empty(trim("  "))) echo "Vide";
?>

Seulement, empty() va générer une erreur :

Note: empty() ne vérifie que les variables, toute autre chose retournera une erreur d'analyse. En d'autres termes, ce qui suit ne fonctionne pas : empty(trim($name)).

http://fr2.php.net/manual/fr/function.empty.php

L'ideal est donc d'utiliser trim() avant empty :

<?php
$var = " ";
$var = trim($var);
if(empty($var)) echo 'variable vide !';
else echo 'ok';

/* résulat : variable vide ! */

$var = "salut !";
$var = trim($var);
if(empty($var)) echo 'variable vide !';
else echo 'ok';

/* résulat : ok */
?>

On a donc utiliser correctement empty(), de plus, cela permet de vraiment savoir si les données ne sont pas vides.

Le problème de cette technique, c'est que ça devient lourd...en effet, si il y a des dizaines de variables a tester, ça va vite devenir agaçant !

On peut déjà créer une fonction :

<?php
function empty_($var) {
  $var = trim($var);
  return empty($var);
}

/* si on veut des paramètres multiples */

function empty_() {
  $bool = false;
  $args = func_get_args();
  
  foreach($args as $var) {
    $var = trim($var);
    if(empty($var)) {
      $bool = true;
    }
  }
  return $bool;
}
?>

Maintenant, il existe une fonction qui retourne le même résultat que empty_() mais où la fonction empty() n'est pas utilisée....A vous de voir ce que vous voulez !

J'espère donc que vous aurez compris ou je veux en venir et que si vous utilisez empty() pour tester des infos de types POST ou GET et bien faites attention :)