Apos muito tempo parado, decidi retomar o projeto do blog Maozinha da Web! Apesar do longo periodo sem atualizacoes, o site manteve uma boa media de visitas diarias, o que mostrou que o conteudo estava sendo util para os colegas da area.Nesse ano de 2013, o site sera atualizado diariamente, tera seu layout remodelado, alem de serem incluidas novas categorias, como Governanca da TI, Seguranca da Informacao e Empreendedorismo.Estamos trabalhando para que o blog seja cada vez mais util e relevante para voce. Nesse tutorial veremos como criar um esquema de validacao de formularios usando Ajax e PHP. A ideia e realizar as validacoes dinamicamente, a medida em que o usuario preenche os campos do formulario. Esse modo de validacao e especialmente util para auxiliar o preenchimento de longos formularios, pois com ele o usuario nao precisa esperar pelo submit completo do form para saber o resultado da validacao server-side. Fazendo o uso de chamadas assincronas ao servidor (para isso usaremos Ajax), essas verificacoes serao feitas campo a campo, a medida em que o usuario preenche o formulario.Para este tutorial, teremos um formulario simples de criacao de usuario, em que o visitante do site tera que escolher um nome de usuario para criar o seu perfil. O nome de usuario deve ser unico, e por isso nossa validacao apenas apontara um erro caso seja escolhido um nome de usuario ja cadastrado no sistema. Para fins deste tutorial, manteremos em memoria uma lista de usuarios pre-definida, mas no seu codigo, e provavel que voce implemente uma funcao de consulta dos usuarios ao banco de dados ou a um arquivo.Bem, vamos ao codigo!Lado do ClientePrimeiramente, vamos criar a nossa pagina index.html. Ela contem apenas um campo de texto onde sera digitado o nome de usuario para cadastro e uma div que informara se o usuario cadastrado ja existe ou nao no sistema. A medida em que o usuario digita no campo de texto, e chamada a funcao Javascript checklogin, que recebe o valor do campo como parametro. <html> <head> <title>Validacao de formulario com Ajax e PHP</title> <script> function checkLogin(user) { var xmlhttp; if (window.XMLHttpRequest) {//codigo para IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {//codigo para IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("result").innerHTML = xmlhttp.responseText == 0 ? "Login ja existente!" : "Login ainda nao cadastrado!"; } } xmlhttp.open("GET","checklogin.php?username=" + user,true); xmlhttp.send(); } </script> </head> <body> <h1>Validacao de formulario com Ajax e PHP</h1> <form action="#"> Usuario: <input name="user" id="user" type="text" onkeyup="checkLogin(this.value)"/> </form> <div id="result" /> </body> </html> A funcao checkLogin, definida acima, instancia o objeto xmlhttp de acordo com o tipo de navegador utilizado pelo usuario. Acao tomada quando a requisicao assincrona e respondida e basicamente mudar o texto da div com id "result" de acordo com o resultado da consulta.Por fim, a funcao checkLogin abre uma conexao via GET com a pagina checklogin.php (sera definida a seguir) passando como parametro o valor corrente do campo de texto. Vale lembrar que a funcao checkLogin sera chamada - e consequentemente a pagina checklogin.php sera consultada - a cada