Memento MySQL 5

Fiche technique

Poids : 400 g
Date de parution :
ISBN : 978-2-212-14039-2
EAN : 9782212140392

Memento MySQL 5

de

chez Eyrolles

Collection(s) : Mémentos Eyrolles

Paru le

Perfectionnement

5.00 Indisponible

Quatrième de couverture

Sécurité et injections SQL

En PHP il faut « échapper » les variables provenant des utilisateurs avec mysqli_real_escape_string qui remplace les caractères pouvant être pris pour des caractères spéciaux SQL. La connexion doit d'abord être établie pour pouvoir l'utiliser : if (isset ($_POST [' prenom']) (...) ;

$ prenom = mysqli_real_escape_string ($_POST ['prenom']) ;

mysqli_query (« INSERT INTO inscrits (prenom) VALUES ('$prenom' ») ;

Les prepared statements permettent dans différents langages de s'affranchir de cette précaution, avec les commandes prepare et execute.

Précautions à prendre ! 1. Vérifier, valider, échapper les données entrées par l'utilisateur. 2. Bloquer toute donnée pouvant contenir un mot-clé SQL interdit. 3. Ne définir que des autorisations d'accès minimales par utilisateur MySQL (à l'aide de GRANT). 4. Utiliser des procédures stockées et des requpetes paramétrées.

Variables serveur

En PHP, les variables serveur sont définies en priorité par les commandes passées en argument au démarrage du serveur mysqld et dans les fichiers de configuration : /etc/mysql/my ;cnf ou etc/my.cnf sous Linux et C :\Windows\my.ini ou C :\my.cnf sous Windows. Pour en voir la liste : Show variables ;

Remarque Certaines de ces variables sont modifiables dynamiquement durant l'exécution grâce à l'instruction Set global pour l'ensemble du serveur, ou Set session pour la session courante uniquement : Set global query_cache_limit=1048576 ;