Il n’y a rien de plus énervant qu’un serveur web mal configuré quand on veux développer une application web en PHP. En voici un exemple:
Je dit ça parce-que je vient de passer 1 heure à chercher pourquoi mon expression régulière ne fonctionnait pas correctement.
<?php
if(preg_match("#^[a-zA-ZÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ]{1}[a-zA-ZÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ '-]+[a-zA-ZÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ]{1}$#", $_GET['text'])) {
echo "GOOD";
}
?>
Cette expression régulière accepte tout texte commençant et finissant par une lettre et pouvant contenir des lettres, des espaces, des apostrophes, et des tirets.
Mais faute d’avoir un serveur web bien configuré, ça ne fonctionnera pas si les « Magic quotes » ou « Guillemets magiques » sont activées. Or, sur les serveurs mutualisés d’OVH elles sont activées par défaut. Il faut aussi savoir qu’il est déconseillé d’utiliser les guillemets magiques et de traiter les données transmises par les formulaires vous-même.
De plus, la version de PHP utilisée par défaut par OVH est encore PHP4.
Pour paramétrer votre hébergement mutualisé OVH, pour utiliser PHP5 plutôt que PHP4, et pour désactiver les « Magic quotes », il faudra ajouter un fichier « .htaccess » dans votre dossier « www » dans lequel il faut :
Pour activer PHP5, ajouter cette ligne:
SetEnv PHP_VER 5
Et pour désactiver les « Magic quotes », ajouter cette ligne:
SetEnv MAGIC_QUOTES 0

En espérant que mon expérience et cet article en aideront plus d’un !
Bon codage à tous
