|
Recherche |
Exemple du problème Voici un exemple simple afin de montrer le problème : Éditez un script "testphp.php" [root@nsXXXX root]# cd /home/ovh/www [root@nsXXXX root]# pico testphp.php et mettez-y le contenu suivant : <? if (!$contenu) { $contenu="Rien"; } echo "Le paramètre passé contient contenu=<b>$contenu</b>"; echo "<i>Si Rien alors l'option register_globals est à Off</i>"; ?> Testons donc ce petit script en l'exécutant par url : http://nsXXXX.ovh.net/testphp.php?contenu=camarche Vous devriez avoir ceci : Le paramètre passé contient contenu=Rien "Si Rien alors l'option register_globals est à Off" Solution Il faut pour cela activer une option dans le fichier php.ini Donc vous localisez le fichier puis vous l'éditez pour mettre l'option register_globals à On. Ceci se fait bien sur via SSH (cf guide http://guides.ovh.net/SshSurServeurDedie/). [root@nsXXXX root]# locate php.ini [...] /usr/local/lib/php.ini [root@nsXXXX root]# cat /usr/local/lib/php.ini | grep -i register_globals ; register_globals to be on; Using form variables as globals can easily lead register_globals = Off [root@nsXXXX root]# pico /usr/local/lib/php.ini [root@nsXXXX root]# cat /usr/local/lib/php.ini | grep -i register_globals ; register_globals to be on; Using form variables as globals can easily lead register_globals = On Ensuite:
[root@nsXXXX root]# /etc/init.d/httpd restart
Vous pouvez tester à nouveau le script en exemple. http://nsXXXX.ovh.net/testphp.php?contenu=camarche Vous devriez avoir ceci maintenant : Le paramètre passé contient contenu=camarche "Si Rien alors l'option register_globals est à Off" |