Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
E aeee Pessoal beleza.
Seguinte, eu to precisando com uma certa urgência validar o nome de usuário em um sistema.
Eu precisaria de uma Expressão Regular que aceitasse digitos, caracteres, e no máximo um hifen um ponto e um underline, mas não espaços acentos e etc, até to lendo a manhã inteira artigos sobre isso mas é tudo muito fragmentado, nenhum explica direito.
Queria saber se alguém pode me ajudar com essa ER, e se alguem tem algum tutorial bem completão que não explique só por cima, mas mostra os comandos sendo aplicados e tal.
Se alguém poder ajudar agradeço.
:mellow:
q gambs..............
preg_match('/[0-9A-Za-z][-.]/') deve funcionar na otenho ctza q nao da pra testa agora mas tae sua er vai ser mais ou menos isso
guia online: http://guia-er.sourceforge.net/index.html
livro que me recomendaram: http://aurelio.net/er/livro/
Então tsubaru, vlw pela ajuda, esse seu até funcionou aqui, o ruim é que tende muito a falhar por esquecimento do próprio programado, por exemplo, esse seu permite caracteres acentuados e se fosse para colocar na mão seriam muitos em maiusculos e minusculos e poderiam passar alguns desapercebidos.
Então noseDeep, vlw ae pela força mas esse ER não funcionou
<?
$txt = "usuario";
if(preg_match('/[0-9A-Za-z][-.]/',$txt)){
echo "válido";
}else{
echo "inválido";
}
?>jsopra, vlw pelo link, esse parece ser bem completão ^_^
Vlw aee pessoal
tente isto:
preg_match("/^[a-zA-Z0-9-._]+$/", $usuario)^^
Pooo zezinho, vlw aeee, funcionou direitinho..
Brigadão mesmo
=)
Eu esquentando a cabeça pra fazer as coisas na programação, e tem tudo prontinho no php.
Por isso que php paga mal pra k7, tudo mastigado.
Mas uma funçãozinha pra lista. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
>
q gambs..............
preg_match('/[0-9A-Za-z][-.]/') deve funcionar na otenho ctza q nao da pra testa agora mas tae sua er vai ser mais ou menos isso
gambs é seu português. http://forum.imasters.com.br/public/style_emoticons/default/grin.gif
Você pode dar uma olhada na área de desafios, lá tem um tópico interessante que pode ajudar, sobre validação de inputs.
Não lembro o nome dele agora. :P
Bom, não tenho nada nesse sentido aqui(tutorial), mas vou tentar ajudar, pois estou tentando montar algo desse tipo.
A idéia seria pegar o que foi digitado e procurar caracteres não permitidos, certo?
Eis o que fiz até agora, que deu certo:
function valida($txt)
{
$txt = trim($txt); //remove espaços antes e depois
$string = str_split($txt); //transforma em array o que foi digitado
//permitidos
$chars = "1234567890abcdefghijklmnopqrstuvxywzABCDEFGHIJKLMNOPQRSTUVXYWZ-._";
$ch = str_split($chars); //transforma em array
//não permitidos
$nochars = ":,;!?~^´`¨<>[]{}()+/=%$\|&*#@çǪº°£¬¢§¹²³\'\"";
$nch = str_split($nochars); //transforma em array
if(isset($invalido))
return $invalido;
else
Da forma como está, é só atribuir a função à uma variável.
Se tiver caracteres, ele retorna esses caracteres e você pode imprimir pro usuário ver.