Método fácil de diferenciar Firefox/I.E

dezembro 13, 2006

Sabemos que não existe uma padronização consistente quando falamos sobre javascript e navegadores para internet ( I.E, Mozilla Firefox, Safari, Opera etc), logo isto é um grande transtorno para os desenvolvedores que necessitam usar o velho javascript.

Como uma opção para a solução desse problema, apresento aqui mais uma bela maneira para distinguir os dois principais browsers da atualidade: I.E e Firefox.

Para aqueles que ainda não são muito familiarizados com o javascript penso que seja a maneira mais fácil de se fazer isso.

Bem, vamos lá. Quando precisamos criar algum código em javascript no HTML usamos a tag <script></script> acompanhada de alguma informação adicional como “language”, “charset”, “src”, “type” e “defer”. E é ai que está o pulo do gato, o Internet Explorer somente lê scripts cuja language for diferente de “javascript1.5”, já o Firefox somente lê scripts cuja language for diferente de “jscript”.
Portanto:

<script language=”jscript”>
function blabla() { /* Função que executa algo somente no Internet Explorer */ }
</script>

<script language=”javascript1.5″>
function blabla() { /* Função que executa algo somente no Mozilla Firefox */ }
</script>

Muito fácil não? Porém quero deixar bem claro que esta solução não pode sanar todos os problemas pois somente funciona para I.E e Firefox. Mas é uma solução simples que pode vir a ajudar muita gente.

Criando senhas automaticamente

dezembro 5, 2006

Esta semana me deparei com um pequeno problema, que muitos de nós programadores algum dia já passou ou ainda passará.

Preciso fazer com que meu programa crie automaticamente senhas aleatórias, e que estas apresentem uma certa segurança para o usuário.

Para isso, tomei base uma técnica que usa md5, o resultado é esta simples função:

<?
function novaSenha()
{
$qtd = 8;
$dic = array(“fonedeouvido”, “abacaxi”, “qualquercoisa”, “palavrasemportugues”,
“palavrasgrandes”, “muitoscaracteres”, “estedicionario”,
“semnexo”,”maisumapalavra123″, “qualquerdata12121212”,
“fimdodicionario”);
for($i=0;$i<$qtd;$i++)
{
$string = $dic[rand(0, count($dic)-1)].”<br />”;
$md5string = md5($string).”!?+-_%#@.”;
$pos = rand(0, 40);
$novasenha .= substr($md5string, $pos, 1);
}
return $novasenha;
}
// Escreve a senha gerada
$novasenha = novaSenha();
echo $novasenha;

?>

Imagem do código
Simples não?
É claro que existem diversas outras maneiras de se fazer isso, mas esta ficou funcional e bem legal.