Após pesquisar em toda internet não encontrei nenhum tutorial adequado explicando sobre AJAX de forma simples e completa, por isso após sofrer um pouco com ele, pretendo compartilhar algumas informações a respeito para que todos possam aproveitar dele. Nesse primeiro artigo estou conceituando e dando um exemplo bem simples de como trabalhar com AJAX.
Chega de teoria e vamos ao que interessa, para quem está com preguiça de digitar, pode encontrar na seção de scripts o download dos arquivos abaixo e jogar direto no diretório de seu servidor web (usei o apache).
Primeiramente vamos criar um script no servidor chamado de hora.php. Apesar de estar usando PHP, como vocês irão ver, é tão simples que é fácil de se entender e portar para qualquer outra linguagem, com pouca ou nenhuma pesquisa, mesmo para quem não sabe nada de PHP.
Agora vamos para o arquivo que chamei de ajaxTeste.html, colocando-o no mesmo diretório (pasta) que o arquivo anterior, lembrando que deve-se ter acesso a ele através de seu servidor web.
<html>
<body>
<!--
Visite http://www.unitech.pro.br
-->
<script type="text/javascript">
function Exemplo1() {
var ajaxObj;
try {
// Firefox, Opera 8.0+, Safari...
ajaxObj=new XMLHttpRequest();
} catch (e) {
// Internet Explorer 6 e superior
try {
ajaxObj=new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
// Internet Explorer 5.X
try {
ajaxObj=new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("Seu navegador não possui suporte ao AJAX!");
return false;
}
}
}
ajaxObj.onreadystatechange=function() {
if(ajaxObj.readyState==4) {
document.exemplo.hora.value=ajaxObj.responseText;
}
}
ajaxObj.open("GET","hora.php",true);
ajaxObj.send(null);
}
</script>
Agora basta chamar pelo seu navegador (e através de seu servidor web) o arquivo ajaxTeste.html e clicar no botão para que ele atualize a hora sem precisar reler toda a página.
Claro que mesmo que fosse reler toda a página nesse caso você nem perceberia, mas para um primeiro passo, esse é bem didático.
[1] Comentário enviado por msantoro em 18/09/2007 - 14:32h
Parabens Pela Iniciativa amigo ... quando iniciei no Mundo AJAX realmente penei varios dias tentando decifrar codigos prontos e explicacao detalhada mesmo naum encontrei ...
Continue com os Artigos e Agrardo o Segundo Capito..
[4] Comentário enviado por ramon.silva em 18/09/2007 - 17:09h
Olá,
Muito bom o seu tutorial, porém tem dois pontos que gostaria fazer observações:
Primeiro -> AJAX não é uma mistura de Javascript, HTML, CSS e XML. E sim apenas Javascript e XML (esse segundo há controvérsias), muita gente confunde isso, pois como o AJAX dá uma certa dinamicidade na página, as pessoas começaram a trabalhar com efeitos e tarefas para que o usuário tenha uma experiência boa na navegação o que antes não se fazia, logo começaram atribuir isso ao AJAX, mas não é bem assim. A técnica AJAX é apenas o fato de fazer requisição ao servidor sem a necessidade dar reload na página, todo resto é DHTML (Dynamic HTML).
Segundo -> Você menciona que AJAX não passa de JavaScript com HTML, na verdade trata-se de JavaScript com XML (mesmo que o xml foi só a requisição, XmlHttpRequest), como mencionei anteriormente todo o resto é DTHML.
Respondendo à dúvida de porque se chamar AJAX, a questão é muito simples, nós damos nomes às coisas e AJAX trata-se de uma técnica (por sinal muito boa), imagina que todas as vezes que formos mencionar esta técnica falarmos:"vamos usar agora aquela técnica-de-pegar-os-dados-assincronamente", sem contar que cada um iria "chamar" de um jeito e em cada lugar uma forma de "chamar" iria ser mais utilizada que a outra, iria ficar complicado mencionar sobre tal técnica. Por isso inventaram a sigla (Asynchronous Javascript And XML) Traduzindo (Javascript e XML assincronos), o nome é bem coerente, não concorda?
Espero ter sido esclarecedor e não ter sido impertinente com as minhas opiniões, sobre o assunto.
[8] Comentário enviado por engos em 19/09/2007 - 09:49h
Obrigado pelos comentários, com certeza eles ajudam bastante nas correções do artigo.
Alem disso também contribuem para a segunda parte, pois estarei começando a fazer nesse fim de semana, pois gostaria de ver alguns comentários para focar melhor para o pessoal interessado, ao invés de só jogar as informações.
Sobre o script, você colocou ele no servidor web e tem acesso/permissão a ele? Pois é necessário para poder funcionar.
Se ainda assim não funcionar, quem tiver dificuldades me manda um e-mail pelo site que respondo e ajudo a fazer funcionar se necessário até em outra linguagem diferente do PHP.