Ajax O Objeto Xml Http Request Parte 4

3

Click here to load reader

Transcript of Ajax O Objeto Xml Http Request Parte 4

Page 1: Ajax   O Objeto Xml Http Request   Parte 4

AJAX - O Objeto XMLHttpRequest - Parte 4

http://www.hospedia.com.br/artigos/8/ajax/1/ajax_-_o_objeto_xmlhttprequest_-_parte_4.html[07/12/2009 15:09:59]

.: Compras :.AJAX - O Objeto XMLHttpRequest - Parte 4

17/04/2006 20:12:00

Autor: Rondinely S. de Almeida

Serviços para Webmasters

Exemplos:pesquisaAJAXPost.html

Este artigo é uma continuação do artigo AJAX - O Objeto XMLHttpRequest - Parte 3, faremosapenas algumas alterações nos arquivos de exemplos para utilizarmos o método POST ao invésde GET na transmissão de dados do objeto XMLHttpRequest .

O documento pesquisaAJAXPost.php

Este documento é baseado no documento pesquisaAJAXPost.php do artigo anterior desta série,vamos analisar aqui apenas as alterações realizadas para mudar o método usado de GET paraPOST.

Aqui podemos notar que a variável url irá conter agora apenas a localização do documento depesquisa, na versão anterior além da localização do documento já passariamos as variáveispassadas pelo método GET .

Temos aqui também a introdução da variável strData que irá conter aos dados a seremenviados pelo método POST, a sintese é a mesma das variáveis para o método GET(nome_variável=valor&nome_variável=valor&nome_variá...), a diferença é que elas não estãojunto ao nome do documento de pesquisa.

function startHttpReq(buscar) { document.getElementById("listboxresult").style.visibility="hidden"; url = "pesquisaAJAXcidadesPost.php"; strData = "buscar="+escape(buscar); //Dados a serem enviados.

Cursos: Java, RUP, BD 10gForms,PL/SQL, Webdesigner, AJAX,PHPCertificação SUN, JEE, JSFwww.cotiinformatica.com.br

Hospedagem PhPSite Grátis. Pagamento Facilitado AtivaçãoImediata. R$ 5,90/mêsWebNames.com.br

Big SolutionsSoluções Web, Sites, Intranet, EAI Gestão deconteúdo e colaboraçãowww.bigsolutions.com.br

|<< Primeira < Anterior 1/1 Próxima > Última >>|

PrincipalInício

CategoriasAjax

DHTML

XML

PHP

MySQLIP

Qual é o meu IP?

Page 2: Ajax   O Objeto Xml Http Request   Parte 4

AJAX - O Objeto XMLHttpRequest - Parte 4

http://www.hospedia.com.br/artigos/8/ajax/1/ajax_-_o_objeto_xmlhttprequest_-_parte_4.html[07/12/2009 15:09:59]

Não deixe de ver também:

Neste bloco do código aparecem as seguintes alterações: no lugar do método GET colocamosPOST, xmlhttp.open("POST", url, true); acrescentamos duas instruções,xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'), que avisa ao servidor que iremos transmitir dados possivelmente via POST; exmlhttp.setRequestHeader('Content-length', strData.length ), que comunica otamanho dos dados que serão transmitidos. A última alteração deste bloco está no método senddo objeto XMLHttpRequest , no lugar de transmitirmos apenas a variável null (nula),mandamos aqui os dados contidos na variável strData.

São estas as alterações necessárias no documento pesquisaAJAX.html, vamos ver agoracomo fica o documento de pesquisa.

O documento presquisaAJAXcidadesPost.php

Este documento é baseado no pesquisaAJAXcidades.php do artigo anterior, e vermos aseguir as alterações necessárias nele para transmitirmos dados no método POST e não maispelo método GET .

A única alteração necessária é no tipo de variável pré-definida do PHP, no lugar de $_GET,usamos $_POST. Pronto, o documento de pesquisa já está alterado para receber dados nométodo POST. Lembramos que a partir da versão 4.1.0 do PHP podemos utilizar a variávelsuperglobal $_REQUEST no lugar de $_GET ou $_POST, uma vez que a primeira contêm asduas últimas, neste caso não precisariamos realizar nenhuma alteração no documento depesquisa para receber tanto dados pelo método $_GET ou $_POST.

Até o próximo artigo.

ANEXO I

Estrutura das tabelas MySQL

xmlhttp.onreadystatechange = XMLHttpRequestChange; xmlhttp.open("POST", url, true); //Abre a url. xmlhttp.setRequestHeader('Content-Type','text/xml'); xmlhttp.setRequestHeader('encoding','ISO-8859-1'); xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xmlhttp.setRequestHeader('Content-length', strData.length ); xmlhttp.send(strData); //Envia dados ao documento da url.

<?php header("Content-type: text/xml; charset=ISO-8859-1"); print '<?xml version="1.0" encoding="ISO-8859-1"?>';?><cidades><?php require_once("../dbexemplos.php"); $buscar = $_POST['buscar']; $result = mysql_query("SELECT id, nome FROM municipios WHERE nome LIKE '$buscar%' ORDER BY nome") or die("Query invalida: " . mysql_error()); while ($row = mysql_fetch_array($result, MYSQL_NUM)) { printf("<retorno id=\"%d\">%s</retorno>\n", $row[0],$row[1]); }?></cidades>

CREATE TABLE municipios ( id int(11) NOT NULL, uf int(11) NOT NULL, nome varchar(40) NOT NULL, PRIMARY KEY (id)) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Municípios Brasileiros';

Hospedagem Linux1200MB espaço, 2GB tráfego. Ativaçãoimediata. R$ 5,90/mêsW bN b

Big SolutionsSoluções Web, Sites, Intranet, EAI Gestãode conteúdo e colaboração

bi l ti b

Page 3: Ajax   O Objeto Xml Http Request   Parte 4

AJAX - O Objeto XMLHttpRequest - Parte 4

http://www.hospedia.com.br/artigos/8/ajax/1/ajax_-_o_objeto_xmlhttprequest_-_parte_4.html[07/12/2009 15:09:59]

>> Inicio <<© Copyright hospedia.com.br - 2005

Todos os direitos reservados.Seu Ponto de Partida na Internet

Receitas de BolosLyrics

Artigos relacionados

AJAX - O Objeto XMLHttpRequest - Parte 3 : 12/03/2006Como prometemos no artigo anterior veriamos uma aplicação prática para...

AJAX - O Objeto XMLHttpRequest - Parte 2 : 18/01/2006Este é o segundo artigo da série e nele vamos conhecer mais a fundo o...

AJAX - O Objeto XMLHttpRequest - Parte 1 : 12/01/2006Este é o primeiro artigo de uma série na qual estaremos explorando os...

Alimentando uma ComboBox dinamicamente utilizando técnicas AJAX :28/11/2005Este artigo mostrará como responder a uma interação...

CREATE TABLE estados ( id int(10) unsigned NOT NULL auto_increment, sigla char(2) NOT NULL, nome varchar(25) NOT NULL, PRIMARY KEY (id), UNIQUE KEY sigla (sigla)) ENGINE=MyISAM DEFAULT CHARSET=latin1;

|<< Primeira < Anterior 1/1 Próxima > Última >>|

Hospede seu sitePHP, WebMail, Construtor. Ativação imediata. R$5,90/mêsWebNames.com.br

Curso de PHPAprenda a programar em PHP Sem sair de casa.R$ 21,00www.kazi.com.br

Marketing para IniciantesCurso Online c/ Certificado: R$ 100 AcesseAgora. Mesmo Antes de Pagarwww.Buzzero.com