Это правильный способ установить cookie? - PullRequest
0 голосов
/ 20 марта 2011

// если логин в порядке, тогда мы добавляем куки

         $_POST['user_name'] = stripslashes($_POST['user_name']); 

          $hour = time() + 3600; 

             setcookie(ID_my_site, $_POST['user_name'], $hour); 

            setcookie(Key_my_site, $_POST['password'], $hour);   

Это правильный способ установки файлов cookie? Это вызывает у меня серьезные ошибки перенаправления. Смотрите здесь: Проблема перенаправления PHP с субдомена

Ответы [ 2 ]

5 голосов
/ 20 марта 2011

Нет, строки нужно заключать в кавычки (используйте error_reporting(E_ALL);, чтобы получать предупреждения о плохих вещах, таких как строки без кавычек).

setcookie('ID_my_site', $_POST['user_name'], $hour);
setcookie('Key_my_site', $_POST['password'], $hour);

Кроме того, если вам нужно применить stripslashes() к данным GPC, конфигурация вашего сервера ужасна. magic_quotes_gpc должно быть отключено. Кроме того, используйте полоски, только если get_magic_quotes_gpc() верно. В противном случае вы не должны использовать полоски на данных GPC.

Кроме того, хранение незашифрованных паролей в файлах cookie - это крайне плохая вещь ! Хотя браузеры обычно шифруют сохраненные пароли, куки не шифруются.

1 голос
/ 20 марта 2011

Также имейте в виду, что установка cookie не будет работать, если ваш скрипт выполнил вывод в браузер. Поэтому, если вы получите предупреждение из строки кода PHP, cookie не будет установлен. Следующая строка может легко сгенерировать предупреждение:

$_POST['user_name'] = stripslashes($_POST['user_name']); 

Убедитесь, что вы проверите, существует ли ключ в массиве $ _POST.

if (array_key_exists('user_name', $_POST))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...