Вопрос по сессиям

zerkms

TDD infected
Команда форума
(в этом случае ты сам ранее предлагал проверять существование сессионной переменной ($_SESSION['login']) для определения наличия сессии... )
я тебе не это предлагал. перечитай, пожалуйста, все начало треда. вдумчиво. окей?

AmdY, а если у пользователя отключены куки, проверить наличие сессии невозможно?
а как у тебя передаётся SID тогда? в урле? (в этом месте уже можно включить мозг)
 

AmdY

Пью пиво
Команда форума
шет, фанат же тебе давал ссылку на фак, чё я распинаюсь, читай до посинения пока не поймёшь.
 

Beavis

Banned
Автор оригинала: MisterBonus

- почему переменные, участвующие в запросе не нужно подвергать обработке htmlspecialchars? Вроде это должно повысить безопасность работы с БД... (оградить её в какой-то степени от SQL-инъекций... исключить возможность попадания в неё "опасных" символов, которые могут являться частью какого-нибудь запроса...)

Заранее спасибо за ответ!
Потому что "обработка переменной" функцией htmlspecialchars никак не влияет на безопасность работы с БД. Эта функция используется вообще для другого (для обработки текста перед подстановкой его в готовый HTML), а для того чтобы в запрос не попали "опасные" символы достаточно функции mysql_real_escape_string. Т.е. кроме неё больше никаких функций "для повышения безопасности" не надо!
А в примере, описанном выше, вызывается она непосредственно при составлении запроса лишь с той целью, что результат её выполнения, кроме как в строке запроса, нигде не нужен, следовательно нет необходимости присваивать результат выполнения mysql_real_escape_string какой либо переменной.
 

zerkms

TDD infected
Команда форума
Как же всё-таки не стартовать сессию до авторизации?
да вообще, ёперный театр, ЗАЧЕМ ТЕБЕ ЭТО ПОНАДОБИЛОСЬ??!?
стартуй сессию всегда, хватит взрывать мозг себе и форуму. не нужно тебе это пока, не нужно. научись хотя бы как-нибудь программировать. научись, чтобы твои скрипты работали хоть как-то.

вольно.
 

MisterBonus

Новичок
AmdY, ошибочка вышла... Это я писал zerkms-у... но пока размещал пост...
А можно как-нибудь (средствами PHP к примеру...) проверить включены ли куки, и если нет, то предложить клиенту включить их, нажав на какую-нибудь кнопку на странице?
 

Beavis

Banned
Кто вообще ему про куки сказал?))

MisterBonus
Забудь пока про куки!! просто всегда стартуй сессию на странице где она может использоваться.
 

MisterBonus

Новичок
Автор оригинала: zerkms

любая другая страница:

if (isset($_SESSION['login'])) {
// если это условие истинно - тогда используем готовую информацию. можно сразу выбрать всю инфу из таблы юзеров (если она тебе нужна) и запихнуть в сессию
htmlspecialchars используем только тут, для вывода в браузер. например:

echo 'Привет, ' . htmlspecialchars($_SESSION['login']);
}
Я подумал что ты советуешь любую другую страницу начинать вот с этого... (может я конечно что-то и не понял... в этом случае извиняюсь!)

Автор оригинала: zerkms
а как у тебя передаётся SID тогда? в урле? (в этом месте уже можно включить мозг)
Включил... Извиняюсь... Действительно тупой вопрос...

Beavis, спасибо за хороший ответ про mysql_real_escape_string!
 

zerkms

TDD infected
Команда форума
Забудь пока про куки!! просто всегда стартуй сессию на странице где она может использоваться.
да вообще всегда стартуй. чо плохо от неё что ли?
 

MisterBonus

Новичок
Просто я где-то прочитал (не помню где...), что кто-то написал, что стартовать её "без надобности" - безумие, вроде как лишняя нагрузка на сервер... вот и подумал...
Извиняюсь если кого-то напрягаю своими вопросами!
 

zerkms

TDD infected
Команда форума
MisterBonus
тут варианта 2:
1. или ту статью/пост писал глупец
2. или ты читал её невнимательно, и просмотрел, что разницу видно только тогда, когда к тебе ходят в день миллионы посетителей.

так вот, пока у тебя не будет пары-тройки миллионов активных юзеров в день, забей на это и стартуй сессию ВООБЩЕ НА КАЖДОЙ СТРАНИЦЕ.
 

MisterBonus

Новичок
может не в тему... когда я переключаю страницы на своём сайте иногда выскакивает сообщение

HTTP/1.1 200 OK
Server: nginx/0.4.13
Date: Thu, 27 Aug 2009 14:12:49 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: keep-alive
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
X-Powered-By: PHP/5.2.0-8+etch13

ed1

Что бы это значило?
Заранее спасибо за ответ!
 
Сверху