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

Форум PHP

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

 

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

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

тема: Всегда ли длина идентификатора сессии составляет 32 знака?
 
 автор: Владимир55   (01.02.2009 в 20:08)   письмо автору
 
 

Посмотрел несколько идентификаторов сессии, который генерирует мой скрипт. Это комбинация цифр и латиницы общей длиной 32 знака.

Всегда ли такая длина? Или количество знаков может стать большим?

  Ответить  
 
 автор: BinLaden   (01.02.2009 в 22:57)   письмо автору
 
   для: Владимир55   (01.02.2009 в 20:08)
 

Нет, зависит от значения директивы session.hash-bits-per-character.

Но без её изменения длина будет фиксированной.

  Ответить  
 
 автор: Владимир55   (01.02.2009 в 23:05)   письмо автору
 
   для: BinLaden   (01.02.2009 в 22:57)
 

А как задать поле в таблице для записи идетификатора сессии?

  Ответить  
 
 автор: BinLaden   (01.02.2009 в 23:06)   письмо автору
 
   для: Владимир55   (01.02.2009 в 23:05)
 

32 символа -- максимум.

  Ответить  
 
 автор: Владимир55   (01.02.2009 в 23:11)   письмо автору
 
   для: BinLaden   (01.02.2009 в 23:06)
 

Годится CHAR [32] ?

  Ответить  
 
 автор: BinLaden   (01.02.2009 в 23:18)   письмо автору
 
   для: Владимир55   (01.02.2009 в 23:11)
 

Годится.

  Ответить  
 
 автор: Trianon   (02.02.2009 в 00:57)   письмо автору
 
   для: BinLaden   (01.02.2009 в 23:06)
 

при session.hash_function = 1 (хеш sha-1) длина может достичь 40 символов.

bits/char    4  5  6 
  md5(128)  32 26 22
sha-1(160)  40 32 27 

  Ответить  
 
 автор: BinLaden   (02.02.2009 в 01:31)   письмо автору
 
   для: Trianon   (02.02.2009 в 00:57)
 

Да, Вы правы

  Ответить  
 
 автор: а-я   (01.02.2009 в 23:46)   письмо автору
 
   для: BinLaden   (01.02.2009 в 22:57)
 

Почему-то мне казалось, что эта директива отвечает за содержание, а не за длину.

'4' содержит 0-9, a-f
'5' содержит 0-9, a-v
'6' содержит 0-9, a-z, A-Z, "-", ","

Или я ошибаюсь?

  Ответить  
 
 автор: BinLaden   (02.02.2009 в 00:28)   письмо автору
 
   для: а-я   (01.02.2009 в 23:46)
 

Эта директива отвечает за количество информации на каждый символ.

  Ответить  
 
 автор: Владимир55   (02.02.2009 в 12:19)   письмо автору
 
   для: BinLaden   (02.02.2009 в 00:28)
 

Сколько нюансов в каждом действии!!!

  Ответить  
 
 автор: Trianon   (02.02.2009 в 12:31)   письмо автору
 
   для: Владимир55   (02.02.2009 в 12:19)
 

на самом деле, если Вы собираетесь использовать идентификатор сесии в качестве индексируемого поля в таблице, bits/char имеет смысл увеличить, чтобы само поле сократить. Это позволит сократить индекс и ускорить поиск. И в этом случае 32 символа и вправду размер достаточный.

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

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