<?php /*------------------------------------------------ * Gerador de senhas 1.0 * Por Luiz Gustavo Cardoso Ribeiro (VenoX) *------------------------------------------------ * venox@bol.com.br / www.lworks.host.sk *------------------------------------------------ * Contribui��o de Adilson de Almeida Pedro * www.afaconsultoria.com.br *------------------------------------------------ */ function gerar_senha($target) { $senha = ""; $consoantes = "bcdfghjklmnpqrstvwxyzbcdfghjklmnpqrstvwxyz"; $vogais = "aeiou"; $numeros = "1234567890"; $a = strlen($consoantes)-1; $b = strlen($vogais)-1; $c = strlen($numeros)-1; for($x=0;$x<=strlen($target)-1;$x++) { if(substr($target,$x,1) == "@") { $rand = mt_rand(0,$c); $senha .= substr($numeros,$rand,1); } elseif(substr($target,$x,1) == "%") { $rand = mt_rand(0,$a); $senha .= substr($consoantes,$rand,1); } elseif(substr($target,$x,1) == "&") { $rand = mt_rand(0,$b); $senha .= substr($vogais,$rand,1); } else { die("<b>Erro!</b><br><i>$target</i> � uma express�o inv�lida!<br><i>".substr($target,$x,1)."</i> � um caract�r inv�lido.<br>"); } } return($senha); } ?> <TABLE> <form action="<?= $PHP_SELF ?>" method="post"> <TR> <TD>express�o:</TD> <TD><INPUT TYPE="text" NAME="template"></TD> </TR> <TR> <TD COLSPAN="2">@ - n�mero<Br>& - vogal<Br>% - consoante</TD> </TR> <TR> <TD></TD> <TD><div align="right"><INPUT TYPE="submit" name="action" VALUE="gerar"></div></TD> </TR> </form> </TABLE> <?php if(isset($_POST["action"])) { echo "<br>senha gerada:<Br>".gerar_senha($_POST["template"]); } ?>