Показать сообщение отдельно

  #7423  
Старый 02.01.2009, 18:37
[dei]
Участник форума
Регистрация: 24.11.2008
Сообщений: 205
С нами: 9190406

Репутация: 362
По умолчанию

Цитата:
Сообщение от Jino  
Почему не безопасно когда включена директива register_globals?
Ну вот например простейший пример с php.net
PHP код:
<?php
// define $authorized = true only if user is authenticated
if (authenticated_user()) {
    
$authorized true;
}

// Because we didn't first initialize $authorized as false, this might be
// defined through register_globals, like from GET auth.php?authorized=1
// So, anyone can be seen as authenticated!
if ($authorized) {
    include 
"/highly/sensitive/data.php";
}
?>
как мы видим для авторизации используется специальная функция, которая в случае успеха инициализирует переменную $authorized. При register_globals 1 мы похекаем всю эту авторизацию просто обратившись к скрипту script.php?authorized=1


Цитата:
Сообщение от Jino  
Как я понял изначально переменные не регистрируются, а регистрируются при $_GET['название переменной']. Верно?
При запуске скрипта создаются суперглобальные массивы $_SERVER, $_GET, $_POST, $_COOKIES и др.
http://ua.php.net/manual/en/language.variables.superglobals.php


Цитата:
Сообщение от Jino  
А вот еще один вопрос назрел

PHP код:
echo ("$_GET <br>"); 
Естественно это неправильно)
Как сделать перенос строки?
PHP код:
echo $_GET.'<br/>'
 
Ответить с цитированием