Les injections SQL

PHP Aucun commentaire »

Une application Web est, de par son exposition au réseau Internet et à ses utilisateurs, sensible aux questions de sécurité. De plus, la souplesse et les largesses de PHP, couplées à celles du protocole HTTP, peuvent rapidement faire passer votre application pour une grosse passoire.

C’est le cas d’une grande partie des solutions PHP du marché, et malheureusement personne n’y coupe : CMS, galeries photos, outils de statistiques… Voici ce qui va introduire plusieurs posts sur la sécurité. Nous y verrons la plupart des failles de sécurité “classiques” qu’on trouve dans les développements PHP, et comment y remédier de façon efficace.

Lire la suite »

Quelle version de PHP choisir ?

PHP Aucun commentaire »

PHP est dans une grande période de transition. Les deux version majeures (4 et 5) cohabitent au niveau de l’hébergement Web professionnel. Ceci est en partie dû à la variété des plateformes proposées, reposant souvent sur Linux.

Il arrive également que le choix technologique pour l’hébergement repose sur un existant, ou soit imposé par le client, ce qui peut conditionner la bonne version à utiliser.

Afin d’y voir plus clair, voici un petit tableau compilant les principales plateformes Windows et Unix/Linux avec les versions standard de PHP proposées :

OS Plateforme Version PHP
Linux Debian Sarge 4.3
Linux Debian Woody 4.1
Linux Mandriva 2005 4.3
Linux Mandrake 2006 5.0
Linux Mandrake 2007 5.1
Linux Suse 8.2 4.3
Linux Suse 9.3 5.0
Linux Suse 10.1 5.1
Linux Suse 10.2 5.2
Linux Gentoo 2005.0 4.3
Linux Gentoo 2005.1 4.4
Linux Gentoo 2006.0 5.0
Linux Gentoo 2006.1 5.1
Linux Ubuntu 5.04 4.3
Linux Ubuntu 5.10 5.0
Linux Ubuntu 6.06 5.1
Linux RedHat Enterprise Linux 3 4.2
Linux RedHat Enterprise Linux 4 4.3
Linux RedHat Enterprise 5 5.0
Linux Fedora Core 3 4.3
Linux Fedora Core 4 5.0
Linux Fedora Core 5 et 6 5.1
Unix FreeBSD 5 4.3
Unix FreeBSD 6 5.0
Windows WAMP 5 5.2
Windows EasyPHP 1.8 4.3

Sources d’information : DistroWatch, RPMFind, sites officiels WAMP/EasyPHP

Design Patterns : singleton

PHP Aucun commentaire »

Restons un peu dans les objets avec les modèles de conception, ou Design Patterns. Nous allons commencer avec un des grands classiques : le singleton. Ce modèle très pratique permet de créer 1 instance maximum d’un objet. On utilise pour cela une variable et une méthode statiques, en rendant le constructeur privé.

Un des grands cas pratiques est l’utilisation pour une connexion à la base de données : cela évite de se connecter 50 fois, on reprend la connexion ouverte.

Lire la suite »

Clonage d’objets

PHP 1 Commentaire »

En PHP 5, les valeurs sont désormais passées par référence. Pour cloner un objet, il faut désormais utiliser la fonction clone(), introduite dans la nouvelle version :

$obj_clone = clone($obj);

Pour assurer la compatibilité avec PHP 4, voici une petite astuce qui recrée la fonction :

if (version_compare(phpversion(), '5.0') < 0) {
  eval('   function clone($object) {
               return $object;   
          }  '); 
}

Il suffira ensuite de l’utiliser dans tous les cas… et hop, une compatibilité ascendante, une ;-)

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in