Mira, te mando un ejemplillo muy burdo, ahi tu le mueves para que te de los resultados que necesitas:
Primero, el frameset:
Código HTML:
<html>
<head>
<title>Pagina Principal</title>
</head>
<frameset rows="100%,*" frameborder="NO" border="0" framespacing="0">
<frame src="llamaphp.php" name="arriba" id="arriba">
<frame src="" name="abajo" id="abajo" scrolling="NO" noresize>
</frameset>
<noframes><body>
</body></noframes>
</html>
No hay necesidad de poner el contenido de el frame de abajo, ahora el archivo llamaphp.php
Código HTML:
<html>
<head>
<title>llamaphp</title>
<script language="javascript">
function llamaphp(){
ctexto=document.getElementById("tuform").consul;
top.abajo.location="consul.php?id="+ctexto.value;
}
function retorno(valor){
atexto=document.getElementById("tuform").nombre;
atexto.value=valor;
}
</script>
</head>
<body>
<form name="tuform" id="tuform">
ID del Alumno: <input type="text" name="consul" id="consul">
<button type="button" onClick="llamaphp()">Consultar</button><br>
Nombre del Alumno: <input type="text" name="nombre" id="nombre">
</form>
</body>
</html>
cuando le introduces el id y le das click al botoncito, este manda a hacer la consulta llamando al siguiente archivo consul.php
Código PHP:
<?
if(isset($_GET["id"])){
//aqui haces todo tu relajo mysql con el id y llamas a una funcion de arriba
//ejemplo
?>
<script language="javascript">
top.arriba.retorno('Juan Perez Jolote');
</script>
<?
}
?>
Bueno, como ves yo no implementé lo de mysql, me imagino que tu ya sabes como se hacen los querys y la cosa y media, solo te estoy diciendo como puedes hacerle para no tener que pasar a la pagina de consulta y de ahi tener que regresar, espero que te sirva, solo hay que jugar con los frames. A proposito, si quieres ver como esta haciendo las consultas o quieres ver (si te está fallando tu script php) en donde esta fallando, le puedes cambiar el porcentaje del frameset para poder ver el frame de abajo