Vous êtes ici Codes PHP et MySQL > Sécurité > Forcer le passage des globals de OFF à ON avec...

 

Forcer le passage des globals de OFF à ON avec l'émulation

Si votre hébergeur ne vous permet pas de mettre la directive register_globals à ON, vous pouvez forcer la récupération des variables avec l'émulation. Vous pouvez émuler les variables suivantes : ($_SERVER, $_ENV, $_FILES, $_COOKIE, $_POST, $_GET, $_SESSION)
 
Iron
[7] sources en PHP voir
Code vu 4836 fois
Enregistré le 08 Nov 2006
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Forcer le passage des globals de OFF à ON avec l'émulation
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Forcer le passage des globals de OFF à ON avec...         */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts184-PHP.htm              */
/* Auteur         : Iron                                                      */
/* Date édition   : 08 Nov 2006                                               */
/*                                                                            */
/******************************************************************************/
?>
Ce code émulera la directive register_globals à On.

<?php
// Émulation de register_globals à on
if (!ini_get('register_globals')) {
   $superglobals = array($_SERVER$_ENV,
       $_FILES$_COOKIE$_POST$_GET);
   if (isset($_SESSION)) {
       array_unshift($superglobals$_SESSION);
   }
   foreach ($superglobals as $superglobal) {
       extract($superglobalEXTR_SKIP);
   }
}
?>  

Ce code émulera la directive register_globals à Off.

<?php
// Émulation de register_globals à off
function unregister_GLOBALS()
{
   if (!ini_get('register_globals')) {
       return;
   }


   if (isset($_REQUEST['GLOBALS']) || isset($_FILES['GLOBALS'])) {
   die('Tentative d\'effacement des GLOBALS détectée');
   }

   // Les variables
   $noUnset = array('GLOBALS',  '_GET',
   '_POST',    '_COOKIE',
   '_REQUEST''_SERVER',
   '_ENV',    '_FILES');

   $input array_merge($_GET,    $_POST,
   $_COOKIE$_SERVER,
   $_ENV,    $_FILES,
   isset($_SESSION) && is_array($_SESSION) ? $_SESSION : array());

   foreach ($input as $k => $v) {
       if (!in_array($k$noUnset) && isset($GLOBALS[$k])) {
           unset($GLOBALS[$k]);
       }
   }
}

unregister_GLOBALS();

?>  

 

Fonctions du code

: Lit la valeur d'une option de configuration - (PHP 4, PHP 5)
: Crée un tableau - (PHP 4, PHP 5)
: Détermine si une variable est affectée - (PHP 4, PHP 5)
: Empile un ou plusieurs éléments au début d'un tableau - (PHP 4, PHP 5)
: Importe les variables dans la table des symboles - (PHP 4, PHP 5)
: Alias de la fonction exit() - (PHP 4, PHP 5)
: Fusionne un ou plusieurs tableaux - (PHP 4, PHP 5)
: Détermine si une variable est un tableau - (PHP 4, PHP 5)
: Indique si une valeur appartient à un tableau - (PHP 4, PHP 5)
: Détruit une variable - (PHP 4, PHP 5)
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

Sécurité

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
    Editeur PHP
 
        Publicité