при восстановлении пароля например... генерю число и отсылаю его на почту если с ней все ок, далее просто сверяю то что потом ввел юзер с данными в сессии и тд,Это делается не так, по крайней мере не с восстановлением пароля. Больше подходит для 2х факторной авторизации. Для восстановления пароля используется хэш-последовательности, и они вставляются в генерируемый линк и в бд, для сверки, мало ли когда я зайду пароль сбросить, или когда письмо дойдет.
да в курсе, но что поделать (некоторые требования), если смогу их обойти то спокойно накину mysql или лучше posgresssql попробуюЕсть та же sqlite, которая практически ничего не требует, но вполне покрывает большинство задач необходимых базовому сайту. Да и файрбэйс есть с бесплатным лимитом...
sprintf('%06d', random_int(0, 999999));
str_pad(mt_rand(0, 999999), 6, '0', STR_PAD_LEFT);
в плане? если есть какие то вопросы, задавай или предлагай,Во первых - зачем вы вообще разместили здесь вопрос, если менее чем через минуту опубликовали ответ? Просто "смотри чё могу!"? Увы, получилось не очень. Поднять рейтинг? Тоже нет, за выставленный самому себе верный ответ баллы не начисляются. Короче, такая себе попытка поднять себе настроение.
выложил что бы в будущем если появиться повторное желание использовать такой формат взять этот примерВ будущем, если вы все таки вырастете в программиста, этот код ничего кроме фейспалма и стыда вам не принесет. А как "решение для кого-то" он скорее вреден.
отсеиваю что бы в нем не было подряд повторяющихся чисел, по мне так хороший код для достижения двух целейТак и не понял зачем, никакой дополнительной защиты это не дает, скорее наоборот - исключает из перебора большой ряд чисел, понижая стойкость почти на порядок. В любом случае - как ответ такое помечать точно не надо.
а вот это уже полезный ответ, не знал что уникальные числа понижают стойкость, интересно узнать почемуУ тебя не "уникальные числа", а "неповторяющиеся цифры". Собственно, при переборе можно сразу исключить все числа, в которых есть 2 повторяющиеся цифры. Очевидно, что выбросив из перебора такие числа, подбор займет заметно меньше времени, сколько точно мне лень считать, но навскидку где-то на 1 порядок меньше.
sprintf('%06d', random_int(0, 999999));
printf("%06d",$x)