Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Prove Yourself

Passar parâmetros para script em Ajax

Recommended Posts

Estou começando a aprender Ajax agora e desenvolvi um script bem simples e estúpido :)

Segue o código:

index.html

<html>
<head>
</head>
<body>
<script type="text/javascript">
	function consultar() {
		xmlhttp = new XMLHttpRequest();
	   	xmlhttp.onreadystatechange=function() {
	   		if(xmlhttp.readyState == 4)
	   			document.getElementById("resultado").innerHTML = xmlhttp.responseText;
	   	}
	   	xmlhttp.open("GET", "buscar.php", true);
	   	xmlhttp.send(null);
	}
</script>
	<form>
		<label for="busca">Buscar</label>
		<input type="text" id=busca onkeyup="java script:consultar();">
	</form>
	<span id="resultado"></span>
</body>
</html>
buscar.php
<?php
$conexao = mysql_connect("localhost", "root", "");
mysql_select_db("busca");
$consulta = mysql_query("SELECT * FROM busca;", $conexao);

for($i = 0; $i < mysql_num_rows($consulta); $i++) {
	$resultado = mysql_fetch_array($consulta, MYSQL_ASSOC);
	echo $resultado['nome'] . "<br />";
}
?>
Quando o cara digitar qualquer coisa no entry aparece o resultado da consulta no spam...

Como se faz para passar parâmetro para esse script em php? O parametro que eu queria passar seria o que o cara digitou na caixa de texto (com id busca) da página index.html para o script em php... daí eu faria um "SELECT * FROM busca WHERE campo = 'texto digitado na entry...'";

Não sei se expliquei direito... Mas tentei ser o mais claro possível!

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tb estou aprendendo.. mas é o seguinte, a tua função JS vai passar o parâmetro assim:

var url="programa.php?var="+encodeURIComponent(var);
		requisicaoHTTP("GET",url,true);
E a função requisicaoHTTP é a seguinte:

function requisicaoHTTP(tipo,url,assinc){
	if(window.XMLHttpRequest){	  // Mozilla, Safari,...
		ajax = new XMLHttpRequest();
	} 
	else if (window.ActiveXObject){	// IE
		ajax = new ActiveXObject("Msxml2.XMLHTTP");
		if (!ajax) {
			ajax = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}	  
	
	if(ajax)	// iniciou com sucesso
		iniciaRequisicao(tipo,url,assinc);
	else
		alert("Seu navegador não possui suporte a essa aplicação!");
}
^^ faltou uma:

function iniciaRequisicao(tipo,url,bool){
	ajax.onreadystatechange=trataResposta;
	ajax.open(tipo,url,bool);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
	//ajax.overrideMimeType("text/XML");   /* usado somente no Mozilla */
	ajax.send(dadosUsuario);
}
Essa inicia que realmente manda os dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.