Cara Mengaktifkan Register Global di PHP 5
Jika sudah memahami potensi keamanan dari register globals dan anda masih tetap ingin mengaktifkan register global, maka ada beberapa cara untuk menjalankan ini.
Berikut beberapa cara untuk mengaktifkan / enable register globals
Cara Pertama: Edit php.ini
Buka file php.ini lalu tambahkan baris berikut:
register_globals=1Cara Kedua: edit .htaccess
Jika tidak punya akses ke server sehingga tidak bisa mengedit php.ini, maka cara yang lain adalah dengan mengedit file .htaccess pada folder aplikasi php berada. Tambahkan kode berikut:
php_flag register_globals 1Cara ketiga: Coding
Jika menggunakan .htaccess masih belum dapat mengaktifkan register globals, maka langkah terakhir adalah dengan menggunakan script. Berikut kodenya:
Masukkan kode ini ke dalam file php:
lalu buat file register_globals.php berikut:
<?php
include('register_globals.php');
register_globals();
/**
* function to emulate the register_globals setting in PHP
* for all of those diehard fans of possibly harmful PHP settings
* @author Ruquay K Calloway
* @param string $order order in which to register the globals, e.g. 'egpcs' for default
* @link hxxp://www.php.net/manual/en/security.globals.php#82213
*/
function register_globals($order = 'egpcs')
{
// define a subroutine
if(!function_exists('register_global_array'))
{
function register_global_array(array $superglobal)
{
foreach($superglobal as $varname => $value)
{
global $varname;
$varname = $value;
}
}
}
$order = explode("\r\n", trim(chunk_split($order, 1)));
foreach($order as $k)
{
switch(strtolower($k))
{
case 'e': register_global_array($_ENV); break;
case 'g': register_global_array($_GET); break;
case 'p': register_global_array($_POST); break;
case 'c': register_global_array($_COOKIE); break;
case 's': register_global_array($_SERVER); break;
}
}
}
/**
* Undo register_globals
* @author Ruquay K Calloway
* @link hxxp://www.php.net/manual/en/security.globals.php#82213
*/
function unregister_globals() {
if (ini_get(register_globals)) {
$array = array('_REQUEST', '_SESSION', '_SERVER', '_ENV', '_FILES');
foreach ($array as $value) {
foreach ($GLOBALS[$value] as $key => $var) {
if ($var === $GLOBALS[$key]) {
unset($GLOBALS[$key]);
}
}
}
}
}
?>
<?php
Disclaimer: gambar, artikel ataupun video yang ada di web ini terkadang berasal dari berbagai sumber media lain. Hak Cipta sepenuhnya dipegang oleh sumber tersebut. Jika ada masalah terkait hal ini, Anda dapat menghubungi kami di halaman ini.