« MySQL/API » : différence entre les versions
Contenu supprimé Contenu ajouté
Ligne 171 :
PHP a des variables d'environnement appelées <code>register_globals</code>. Depuis PHP 4.2, elles sont False par défaut, et ne doivent pas être activées. Dans PHP 5.3, cette variable est également désuète, et dans PHP 6 retirée.
Cependant, si la version de PHP utilisée accepte register_globals, on peut vérifier s'il est activé lancer <code>ini_get()</code>. Si c'est le cas, <code>ini_set()</code> ne pourra pas le changer. Il y a deux façons de le faire :
* Éditer <code>php.ini</code>.
▲* adding one line to .htaccess:
php_flag register_globals off
En fait si register_globals est True, un utilisateur peut arbitrairement ajouter des variables à votre script avec ce genre de commande :
your_script.php?new_variable=new_value
Ne jamais utiliser le tableau <code>$_REQUEST</code>, lui préférer :
* $_ENV
* $_GET
Ligne 194 ⟶ 186 :
* $_SERVER
Cela signifie que si votre script définit une variable serveur appelée "userid" et que l'application tente de la lire dans <code>$_REQUEST</code>, l'utilisateur peut prévenir en ajoutant une variable à la requête.
[[en:MySQL/APIs]]
|