| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Моя функция создания случайного пароля |
| Автор: InfMag 24.12.2007, 15:17 | ||
Вот функция:
Когда запрашиваю просто echo genpass(); выдает - 000000 mt_rand(0,sizeof($chars)-1) - походу постоянно выдает 0, но почему? |
| Автор: skyboy 24.12.2007, 15:44 |
| по видимому, sizeof($chars) - 1 возвращает "0" или "-1". попробуй вывести sizeof($chars). для строк есть http://php.net/strlen - попробуй её. кроме того, до версии РНР 5, генератор mt_rand следует инициализировать при помощи http://php.net/mt_srand |
| Автор: MoLeX 24.12.2007, 15:50 | ||
InfMag мой вариант
|
| Автор: InfMag 24.12.2007, 16:46 | ||
| skyboy, а почему следует через mt_srand() инициализировать и каким образом? Добавлено через 4 минуты и 45 секунд skyboy, Версия PHP 4.4.7
Вот так прошло, через strlen() +1 |
| Автор: Mal Hack 24.12.2007, 21:52 | ||
|
| Автор: BASILIO 24.3.2008, 17:51 | ||
Жесть, народ, зачем так мучатся? =)
|
| Автор: bars80080 24.3.2008, 18:27 |
| а затем, чтобы пароль был не просто случайным, а случайным в диапазоне определённых символов либо только латиница, либо латиница в нижнем регистре, либо латиница и цифры и т.д. |
| Автор: BASILIO 24.3.2008, 18:40 |
| bars80080, логично, только вопрос, а оно надо? ;) Ту абракадабру что выдаёт мд5 спокойно можно под пароли юзать =) |
| Автор: bars80080 24.3.2008, 18:53 |
| товарищ BASILIO, вы можете предсказать все возможные вероятности, в кот. вам потребуются генератор случайных паролей? я вот к примеру сталкивался с тем, что нужно получить кодовое слово определённой длины, начинающееся исключительно с маленьких латинских букв, а дальше цифры и латиница в любом регистре с помощью функции выше, можно это реализовать, а md5 поможет? я уж не говорю о вставке кириллицы |