Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
А куки я считаю нормальным местом для хранения данных. А то, что у юзера могут вытащить куки трояном, то это его вина, а не программиста.
Я не спорю, можно создавать рандомный хеш при авторизации, сохранять его в БД и ложить в куке и потом просто сверять два хеша.
В пятой версии появилась константа E_STRICT, показывающая строгие замечания по поводу кода. Разумеется, их желательно видеть, но они не входят в E_ALL, потому будем использовать числовое значение error_reporting(8191)
error_reporting(E_ALL | E_STRICT)?добрая половина материала вообще не рекомендуется к прочтению, как растлевающая умы молодым и неокрепшим в профессиональном смысле разработчикам
"Поэтому их необходимо перехватывать и упорядычивать."
ошибки не надо перехватывать, их надо исправлять
"Создаём функцию для фильтрации (mysql_real_escape_string - длинно)"
переименование функций - зло, пользуйся редакторами с автокомплитом
"Не проверяйте на наличие плохих символов. Проверяйте на отсутствие нехороших. Вместо"
разницы абсолютно никакой, всё зависит от ситуации
"Данный материал для начинающих программистов (ИМО, до 12-18 месяцев стажа)."
добрая половина материала вообще не рекомендуется к прочтению, как растлевающая умы молодым и неокрепшим в профессиональном смысле разработчикам
4. Начинающие программисты вряд ли имеют доступ к глобальному конфигу и знания, как выключить magic_quotes. Очень часто вы находитесь на shared сервере, а set_ini тут не работает, поскольку к моменту выполнения set_ini magic_quotes уже поработали.
set_magic_quotes_runtime(0);
function strips(&$el)
{
if (is_array($el))
foreach($el as $k=>$v) strips($el[$k]);
else
$el = stripslashes($el);
}
if (get_magic_quotes_gpc())
{
sk_ga_strips($_GET);
sk_ga_strips($_POST);
sk_ga_strips($_COOKIE);
sk_ga_strips($_REQUEST);
if (isset($_SERVER['PHP_AUTH_USER'])) sk_ga_strips($_SERVER['PHP_AUTH_USER']);
if (isset($_SERVER['PHP_AUTH_PW'])) sk_ga_strips($_SERVER['PHP_AUTH_PW']);
}Поэтому любой php скрипт по дефолту остается дырявым, пока не доказано обратное
error_reporting(8191), так конечно нельзя, а что если код будет читать кто-то не читавший с вашу статью :) и попробуй догадайся, что-это.if(!defined(E_STRICT)) define(E_STRICT, 2048);if (!defined("E_STRICT")) define("E_STRICT", 2048);
Основы безопасности PHP