Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2010, 21:20   #1
Napste®
Пользователь
 
Регистрация: 23.04.2009
Сообщений: 27
Вопрос Генерация имен

Подскажите пожайлуста!

Как на PHP сгенерировать случайное имя для картинки без возможности повторения?
Napste® вне форума Ответить с цитированием
Старый 06.05.2010, 21:47   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

mt_rand используйте. Можно вместе с ascii кодами. А потом проверять на повторы.
motorway вне форума Ответить с цитированием
Старый 07.05.2010, 10:13   #3
dekameron
Форумчанин
 
Аватар для dekameron
 
Регистрация: 27.04.2010
Сообщений: 185
По умолчанию

$name=md5(time());
Помог - тырк на весы
dekameron вне форума Ответить с цитированием
Старый 07.05.2010, 11:34   #4
Napste®
Пользователь
 
Регистрация: 23.04.2009
Сообщений: 27
По умолчанию

А возможно ли такое что $name=md5(time()); выдаст имя, которое уже хранится в базе?
Napste® вне форума Ответить с цитированием
Старый 07.05.2010, 14:09   #5
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,158
По умолчанию

в принципе - да... но вероятность - ничтожно мала ченить два в -64 степени

или если время генерации имен совпадет до микросекунд
ADSoft вне форума Ответить с цитированием
Старый 07.05.2010, 15:24   #6
Vertexxx
Заблокирован
 
Регистрация: 10.04.2010
Сообщений: 145
По умолчанию

Господа Ну, тайм таймом, но в md5 то какой смысл? Он же (тайм) и так или одинаковый будет или разный, а значит и хэши его тоже. Я считаю это неоправданным использованием серверных ресурсов.
Vertexxx вне форума Ответить с цитированием
Старый 07.05.2010, 18:40   #7
Napste®
Пользователь
 
Регистрация: 23.04.2009
Сообщений: 27
По умолчанию

Vertexxx, а какой по вашему мнению будет оправданный метод?
Napste® вне форума Ответить с цитированием
Старый 07.05.2010, 19:13   #8
Vertexxx
Заблокирован
 
Регистрация: 10.04.2010
Сообщений: 145
По умолчанию

Вы поняли смысл моего предложения? Я имел ввиду не перегонять из пустого в порожнее, то есть не использовать хеширование там, где это не нужно и не тратить ресурсы сервера зазря. Просто не вижу ни одного весомого аргумента для того, чтобы захешировать метку.
Тот, кто это предложил, наверное подумал так: при хешировании размер возрастёт с 11 до 32 символов, а значит и повторения будут случаться реже. Как бы не так Если попадутся две одинаковые метки, то и хеши у них будут одинаковыми.
Поэтому здесь оправданный метод - оставить метку такой, какая она есть, без всякого хеширования.
Vertexxx вне форума Ответить с цитированием
Старый 07.05.2010, 20:33   #9
Napste®
Пользователь
 
Регистрация: 23.04.2009
Сообщений: 27
По умолчанию

Vertexxx, спасибо за разъяснение.
Napste® вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Декорирование имен fs444 Общие вопросы C/C++ 3 22.03.2010 22:02
Совпадение имен формул mephist Microsoft Office Excel 4 13.10.2009 09:32
Подстановка имен книг mephist Microsoft Office Excel 2 20.07.2009 11:16
Проблемы с пространствами имен z00m1e Общие вопросы C/C++ 0 29.10.2008 17:33
Вывод имен столбцов maxix БД в Delphi 2 29.09.2008 16:28