
Si vous vous souciez un minimum de la sécurité de votre code et que vous connaissez les enjeux des injections SQL, des attaques du type Cross Site Scripting (XSS) et autres Cross-Site Request Forgery (CSRF,XSRF)…
La plupart des ses attaques sont tellement malicieuses (qui à dit tordues?
), que le meilleur moyen pour bien gérer ses entrées en PHP est de les filtrer plus ou moins brutalement…
Pour ça, depuis la version 5.2.0 de PHP, des filtres et validateurs ont étés implémentés. Ils peuvent servir directement sur les ressources stream, par le biais des fonctions stream_* ou plus simplement, avec les fonctions de type filter_*.
(Lire la suite…)

Pour géolocaliser une adresse physique sur internet, Google nous donne accès à plusieurs services gratuits. La plupart nécessitent javascript pour être utilisé.
Nous allons nous intéresser au service Geocoding qui est un service RPC supportant plusieurs standard en sortie. Nous allons utiliser JSON puisque c’est le format par défaut.
(Lire la suite…)

Quand on cherche à créer une base de données, la bonne pratique est de passer par la création du Modèle Conceptuel des Données (MCD) ou directement le Modèle Logique des Données (MLD), de la méthode MERISE. Dans les deux cas, les relations entre les entités sont essentielles.
En pratique, lorsque l’on passe à la création sous MySQL, la plupart du temps, on perd ses relations qui assurent pourtant l’atomicité de la base de données (norme ACID).
Sous MySQL 5.0, il n’existe qu’un seul moteur de stockage permettant de gérer les clés étrangères : InnoDB.
InnoDB à été développé par Oracle. Un de ses avantages est que les fichiers peuvent s’auto-réparer après un crash, grâce à ses propres logs.
La taille maximum pour ce type de moteur est de 64To par tables.
Il est important, par contre de noter que les tables de type InnoDB sont performantes dans les environnements mixte : lecture/écriture…
(Lire la suite…)