Antes que nada quiero dejar claro que es lo que quiero que haga:
La idea es rellenar un formulario de proyectos, ya sabéis, nombres, coordinadores, temas etc. La cosa es que yo relleno los campos con selects que consultan la base de datos, pero bueno aquí no está el problema. El problema es el siguiente, el usuario debe ser capaz de elegir un coordinador en el select del coordinador, y una vez elegido más abajo el campo de la Titulación, debe rellenarse automáticamente con la titulación del coordinador en cuestión ( aquí es donde tenemos AJAX )
dejaré las lineas de código de los sitios problemáticos.
Alta del projecto:
-declaracion del script que hace la llamada Ajax
Código HTML:
<script language="javascript" src="media/js/jquery.js" type="text/javascript"> function obtenerTitulacion(ID) { var parametros = "ID="+ID; $.ajax({ data: parametros, url: 'consultaAjax.php', type: 'post', success: function(response) { $("#titulPrincipal").html(response); } }); } </script>
-llamada a la función:
(está dentro de un form y a su vez dentro de una table)
Código HTML:
<tr> <td ALIGN=RIGHT>Coordinador del projecte: </td> <td> <select name="coordinador" id="coordinador" onChange="obtenerTitulacion(this.value);"> <?php //select coordinador, consulta base de dades $coordinador=mysql_query("SELECT * FROM form_formadors WHERE participacio='Coordinador' order by nom_cognoms",$linkForm); printf("<option>No seleccionat</option>"); while($fila_coordinador = mysql_fetch_array($coordinador)){ printf("<option value=%s>%s</option>",$fila_coordinador["ID"],$fila_coordinador["nom_cognoms"]); } //liberar mysql_free_result($coordinador); ?> </select> </td> </tr>
Código PHP:
<?php
include("media/php/con.php");
$IDTITUL=$_POST['ID'];
$linkForm=ConnectarBDD(1);
$titulacioCoordEsc=mysql_query("SELECT titulacio_formador FROM form_formadors WHERE ID='$IDTITUL'",$linkForm);
$titulCoord = mysql_query("SELECT nom_titulacio FROM titulacions WHERE ID='$titulacioCoordEsc'",$linkForm);
echo $titulCoord;
?>
-Lugar del form anterior donde debería salir la titulación:
Código HTML:
<tr> <td ALIGN=RIGHT>Titulacio principal: </td> <td> <div id="titulPrincipal">Titulacion</div> </td> </tr>
Saludos!!