Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Авторизация с куками
 
 автор: nameIvan   (20.04.2018 в 06:51)   письмо автору
 
 

Здравствуйте!
Давно не писал на php ничего. Но вот на работе потребовалось сделать небольшую систему (больше для себя), сижу вспоминаю язык.

Проблема с авторизацией.
Нашел в инете скрипт и на его основе решил сделать. http://programmer-weekdays.ru/archives/125 Если проверять голый скрипт, на пустых страницах, то срабатывает все как надо.
Но когда вставляю в свою страницу код, то получаю ошибку:

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\pos1\index.php:55) in Z:\home\localhost\www\1\index.php on line 70

Строка 70:
setcookie('errors', '', time() - 60*24*30*12, '/');


И при авторизации получаю:
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\pos1\index.php:55) in Z:\home\localhost\www\pos1\index.php on line 70

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\pos1\index.php:55) in Z:\home\localhost\www\pos1\index.php on line 92

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\pos1\index.php:55) in Z:\home\localhost\www\pos1\index.php on line 93

Строки 92 и 93:
setcookie("id", $data['users_id'], time()+60*60*24*30); 
setcookie("hash", $hash, time()+60*60*24*30); 


А также получаю сообщение Включи куки. Но куки включены в браузере

Или я слишком заморочился с куками?

  Ответить  
 
 автор: ioffeaod   (01.05.2018 в 13:26)   письмо автору
 
   для: nameIvan   (20.04.2018 в 06:51)
 

setcookie() определяет куку для отправки вместе с остальной header-информацией.Куки обязаны быть отправлены до любых других шапок/headers (это ограничение кук, а не РНР). Это требует, чтобы вы помещали вызовы этой функции перед тэгами <html> или <head>.

Вы можете устанавливать так $_COOKIE["ID"] = 212;
Вообще делать авторизацию на Куках думаю не стоит. Лучше сделайте на сессии.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования