Заполните поле нулевого пароля в таблице MySQL - PullRequest
0 голосов
/ 14 ноября 2011

Я только что добавил поле пустого пароля в таблицу mysql, используя этот код:

ALTER TABLE `mytable` ADD `password` VARCHAR( 25 ) AFTER `ClientEmail`

Теперь, когда поле пароля находится в таблице, я хочу заполнить эти пустые поля каким-нибудь паролем. Как правильно заполнять поля случайно выбранными паролями, которые различны для каждой записи? После того, как пароли были записаны в таблицу, я собираюсь отправить каждую запись в таблице по электронной почте, чтобы сообщить им об их вновь созданном пароле (и, конечно, дать им возможность создать свой собственный, но это отдельная проблема). *

Спасибо.

Ответы [ 3 ]

0 голосов
/ 14 ноября 2011

Вы можете использовать что-то вроде:

SUBSTRING(MD5(RAND()) FROM 1 FOR 6)

в качестве пароля для вставки случайных паролей с помощью запроса вставки.Надеюсь, это поможет

0 голосов
/ 14 ноября 2011

Я обычно создаю строку символов, которые я считаю действительными символами пароля.Затем я использую rand () с substr () в цикле, чтобы создать случайный пароль, по одному символу за раз.

Затем, получив пароль, вы отправляете HTTPS-ссылку клиенту по электронной почте, котораяпозволяет им «подбирать» пароль в течение ограниченного времени.

После того, как вы позволите пользователю сменить пароль, вы должны хранить только хэш пароля в базе данных.

Конечноэто можно упростить, удалив пароль и просто воспользовавшись уникальной ссылкой и потребовав от них установки пароля при нажатии на защищенную ссылку.

0 голосов
/ 14 ноября 2011

Вы могли бы использовать CHAR(FLOOR(RAND()*10) MOD 26 + ORD('a')) сцепленные несколько раз, чтобы получить случайные строки из английского алфавита.

РЕДАКТИРОВАТЬ: умножить на 1000 следующим образом: CHAR ((FLOOR (RAND () * 1000) MOD 26) + ORD ('a'))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...