Показать полную графическую версию : выбор из цикла
$a = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
for ($i = 0; $i < 12; $i ++){
$emi = substr($a, rand(0, strlen($a)), 1);
echo $emi;
}
как $emi можно записать в файл или в БД в таком же виде в котором она
в цикле?
а что мешает записвать прямо в самом цикле? или создать промежуточную переменную и добавлять к ней emi, а потом записать в файл?
или я не так понял суть вопроса?
Vlad Drakula
23-08-2005, 01:33
slaine
$a = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
$b = '';
for ($i = 0; $i < 12; $i ++){
$emi = substr($a, rand(0, strlen($a)), 1);
$b .= $emi;
echo $emi;
}
echo $b;
slaine
а вообще плохой способ генерить пароли... есть способы на много лучьше!
Xcode если я буду записавать БД прямо в цикле, то получится по одному символу на строчку!
А промежуточную переменую создать не догадался..
Vlad Drakula скажите почему плохой способ генерить пароли?(кстати это мне уже говорит второй человек, но от него я ответа так и не дождался)
А какой тогда есть лутчше способ, например?
Спасибо всем.
slaine
$i=7; // кол-во символов пароля
$upw=substr(md5(microtime(),0,$i);
$upw - вот вам уникальный пароль, вероятность совпадения стремится к нулю.
а Ваш метод генерации может выдать одиноковые пароли.
Xcode
Генерить на основе только времени не есть хорошо, опять же где mixedcase?
archy
почему не есть хорошо?...
microtime() - если мне память не изменяет вернет значение в секундах с Unix Epoch(или как там в мануале напимано), томеж где то с 1970.
т.е. уникальное значение.
а MD5 - выдаст уникальный пароль.
для надежности можно обрезать уникальное количество символов, чтобы пароли получились разными по длине.
и будет все уникально...=)
Xcode
Опять же ограниченное колво символов [0-9A-F] подбираются махом...
Prisoner
25-08-2005, 10:23
Угу, тут (http://gdataonline.com/) к примеру база хешей на десяток лямов. Приходи, смотри :)
хех... их ще оказывается не зарыли.... не хорошо...
Vlad Drakula
25-08-2005, 12:36
$upw = encodeB64(rand(100, 999), substr(md5(microtime()),0,3));
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.