eso lo puedes hacer con ajax atravez del evento onclik  te pongo un ejemplo: sencillo
 
Código:
 <form action="" name="formulario" >
<input type="text" id="clave"  > <button type="button" onClick="buscar()">buscar</button>
    </form>
<div id="resultado">
  </div>
  tu archivo ajax seria asi:
----ajax.js--- 
Código:
 function objetoAjax(){
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try {
		   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (E) {
			xmlhttp = false;
  		}
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}
//_________________________________________________________________________
function buscar(){ //esta es la funcion que envia los datos de manea asincrona
	//div donde  mostrararemos  los datos de la consulta 
	divResultado = document.getElementById('resultado');
	//tomamos el valor enviado del formulario de envio
	clave=document.formulario.clave.value;
	//instanciamos el objetoAjax
	ajax=objetoAjax();
	//usamos el medoto POST
	//archivo que realizará la operacion
	ajax.open("POST", "buscar.php",true);
	//mostramos una imagen mientras cargamos el resultado de la consulta
	divResultado.innerHTML= '<img src="images/ajax.gif">';
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//visualizamos el resultado correscpondiente
			divResultado.innerHTML = ajax.responseText
		}
	}
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valoress
	ajax.send("clave="+clave)
}
  
 tu archivo buscar.php encardo de ralizar la consulta cuadno reciba  la clave   
 Código PHP:
    
<?php
include "conexion.php"; //tu archivo de conexion
$clave=utf8_decode($_POST['clave']);
echo" $clave";
//aqui tu consulta
 //y todo lo que imprimas aqui se mostra en el div resultado,, vez que no es muy complicacado
?>