Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Генерировать String с длиной 6 
:(
    Опции темы
Muerto
Дата 25.1.2011, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Хотелось бы генерировать String длиной 6, что бы был уникален и не пришлось сверять с базой...

Должен состоять из крупных и маленьких букв...

Есть идея присвоить каждой цифре в  timestamp букву можно будет что то уникальное таки даже без рандомации выдавать, что думайте?

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

Так же ещё одна проблема это что в базе данных поиск идет как бы не case sensitive поэтому если aaaaaa или AAAAAA по сути может найти по запросу aaaaaa Эти обе записи, если ставить varchar (надо binary?)и тп... но с другой стороны можно в md5 катать... но это уже мой тупизм что я что то упускаю, не хотелось бы конвертировать в md5

Это сообщение отредактировал(а) Muerto - 25.1.2011, 16:31


--------------------
user posted image
PM MAIL   Вверх
skyboy
Дата 25.1.2011, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(Muerto @  25.1.2011,  15:18 Найти цитируемый пост)
Есть идея присвоить каждой цифре в  timestamp букву

в течение одной секунды вполне могут быть несколько запросов.
проще rand() + преобразование из десятичной системы в, скажем, 36-ричную(для записи используется 26 букв и 10 цифр). итого в 6 символов умещаются 36^6 ~ 2.2 млрд комбинаций
а чтоб обеспечить уникальность, поставить в БД уникальный индекс. и только если вставка обломилась(такое значение уже есть) - генерировать новое значение.
PM MAIL   Вверх
Muerto
Дата 25.1.2011, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



skyboy, Ну можно брать в учет микро секунды  smile 
Если есть хоть какой то шанс что в базе оно есть, меня это не устраивает, ибо я тогда могу генерировать пока такого не будет в базе ( и я уверен что больше раза за тысячу запросов такого не будет), а эт не интересно 

Сейчас дела есть, позже возьму придумаю как таки micro time превратить в уникальный String длиной 6

Что то я сейчас в сторону хекса децималки подумал , точно ща не помню какая длинна у timstamp + micro но допустим

14246547987654323

будет

329 D28 F01 46 6B 4

А дальше уже какие то вычисления сделать , и будет то что нужно  smile 

Хотя не, надо что то посложней брать мне в помощь http://www.php.net/manual/en/function.base-convert.php и ваш совет  smile 

Но может и тупо игра с uniqid()






Это сообщение отредактировал(а) Muerto - 25.1.2011, 17:29


--------------------
user posted image
PM MAIL   Вверх
skyboy
Дата 25.1.2011, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1104 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.