Blogueur

« Franck Méthia »

Franck Méthia
7 mars 2012

Installation de xdebug sur ubuntu

Tout d’abord, il faut commencer par installer le module php5-xdebug à l’aide de cette commande :

$ sudo apt-get install php5-xdebug

Pour vérifier si le module est chargé, exécuter la ligne de commande suivante :

$ php - m

et vous devez trouver cette valeur à la fin :

.......
[Zend Modules]
Xdebug

Selon la version de votre ubuntu, ajouter les lignes qui n’ont pas les valeurs ci-dessous dans le fichier /etc/php5/conf.d/xdebug.ini :

xdebug.remote_enable=On
xdebug.remote_log=/var/log/xdebug.log
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=localhost
xdebug.remote_port=9000

Pour connaître les valeurs de vos variables, exécuter la commande suivante :

$ php -i | grep xdebug.remote
xdebug.remote_autostart => Off => Off
xdebug.remote_connect_back => Off => Off
xdebug.remote_cookie_expire_time => 3600 => 3600
xdebug.remote_enable => On => On
xdebug.remote_handler => dbgp => dbgp
xdebug.remote_host => localhost => localhost
xdebug.remote_log => /var/log/xdebug.log => /var/log/xdebug.log
xdebug.remote_mode => req => req
xdebug.remote_port => 9000 => 9000

À chaque modification du fichier xdebug.ini, il faut redémarrer le serveur Apache :

 $ sudo /etc/init.d/apache2 restart

Dernier point, aller faire un tour dans votre fichier php.ini (/etc/php5/apache2/php.ini) et vérifier que les variables suivantes ont les bonnes valeurs :

display_errors=On
html_errors=On
error_reporting=E_ALL

À chaque modification du fichier php.ini, il faut redémarrer le serveur Apache :

 $ sudo /etc/init.d/apache2 restart

Maintenant vous êtes prêts à utiliser xdebug.





Franck Méthia
18 octobre 2011

Array.indexOf sous Internet Explorer

Cela faisait un petit bout que je n’avais pas chialer après Internet Explorer, mais voilà que j’ai eu besoin de rentrer dans du vieux code. Quand je parle de vieux code, c’est du code qui n’utilise pas de librairie telle que jQuery (Je suis vendu à cette librairie javascript ;) ) ou on est obligé de tout faire à bras… donc la compatibilité inter-navigateur.

J’ai eu le plaisir de découvrir que la méthode indexOf pour les Array sous Internet Explorer 8 et précédent n’était pas implémenté tandis qu’elle est présente depuis la version 1.5 de Firefox.

Bon pour ceux qui aurait besoin d’une solution pour rendre compatible leur code, voici la solution:

if(!Array.indexOf){
   Array.prototype.indexOf = function(obj){
      for(var i=0; i<this.length; i++){
         if(this[i]==obj){
            return i;
         }
      }
      return -1;
   }
}

Bonne programmation à tous.





Franck Méthia
28 octobre 2010

Google Maps API v3

Il y a quelques jours, j’ai ajouté une Google Map sur un de nos sites. J’ai eu l’agréable surprise de voir que Google avait sorti une 3e version de son API. Cette nouvelle version sortie en mai dernier vient avec des nouvelles fonctionnalités très intéressantes.

Comme :

  • plus besoin de « api key », nombreux vont être contents. Plus besoin de récupérer une key (qu’on oublie…) pour faire une mise en ligne;
  • la possibilité de communiquer avec le GPS de votre appareil mobile ou cellulaire (iPhone et Android), pour vous placer sur la map;
  • et par conséquent, calculer le trajet pour vous y rendre;
  • la personnalisation des contrôles a été simplifiée;
  • etc…

Je vous invite à consulter la documentation, ainsi que les tutoriels directement.





Franck Méthia
20 octobre 2010

Limiter les accès à un fichier avec Apache

Voici un petit tutoriel qui va servir à plusieurs. Il existe beaucoup de tutoriels qui explique comment limiter les accès à un dossier avec Apache mais très peu pour limiter à un accès à un fichier. Pour cela, on a besoin d’un fichier .htaccess et d’un fichier .htpasswd tout comme pour protéger un dossier.

Créer le fichier .htaccess

Il doit être enregistré dans le dossier contenant le fichier à protéger par mot de passe.

<Files fichier-a-proteger.txt>
 AuthUserFile [chemin_absolu].htpasswd
 AuthGroupFile /dev/null
 AuthName [texte]
 AuthType Basic
 <Limit GET POST>
   require valid-user
 </Limit>
</Files>
  • [chemin_absolu] : chemin sur le serveur (à modifier lors de la mise en ligne)
  • [texte] : texte qui sera affiché dans la fenêtre pour se connecter

NOTE : il faut répéter le bloc <Files> ci-dessous pour chaque fichier que l’on veut protéger.

Créer le fichier .htpasswd

Ce fichier doit être enregistré à l’emplacement définit dans le fichier .htaccess. Il contient les couples identifiant:mot_de_passe. Il peut être édité à la main.

franck:t3stmdp!
thomas:Dur%Pwd

Pour ajouter encore plus de sécuriser, il est possible d’encrypter les mots de passe en MD5 ou en SHA.Voici les lignes de commandes à utiliser :

  • en MD5 : htpasswd -m .htpasswd [nom_utilisateur]
  • en SHA : htpasswd -s .htpasswd [nom_utilisateur]

La ligne de commande va demander deux fois le mot de passe. Après, vous pourrez ainsi trouver une ligne similaire dans le fichier .htpasswd.

john:$apr1$l250XlpJ$N5MhahpljP3gxHcxeMjY8.

NOTE : cette même ligne de commande permet de mettre à jour un mot de passe pour un utilisateur déjà existant.





Franck Méthia
16 octobre 2009

Trouver un loading pour les appels AJAX

Ça fait quelques temps que j’utilise ce site internet pour faire patienter les internautes pendant mes appels AJAX : http://www.ajaxload.info/

Ce site propose une multitude de GIF animé et en plus personnalisable.

Voici quelques exemples :

Aller voir et amusez vous bien.