Estoy programando en PHP y JavaScript y tengo un problemilla. En mi software tengo que crear y editar profesores, y esos profesores tienen unas titulaciones universitarias.
Bien, pues al editar al profesor, el usuario puede querer añadir, modificar o eliminar las titulaciones que tiene el profesor. Yo esto lo hago de la siguiente manera:
- <html>
- <head>
- <title>Datos Profesor</title>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- </head>
- <body>
- <script type="text/javascript">
- num=0;
- function crearTitulacion(obj) {
- num++;
- fi = document.getElementById('f1');
- contenedor = document.createElement('div');
- contenedor.id = 'div'+num;
- fi.appendChild(contenedor);
- ele = document.createElement('input');
- ele.type = 'text';
- ele.name = 'titulacion'+num;
- ele.size = '40';
- contenedor.appendChild(ele);
- ele = document.createElement('input');
- ele.type = 'button';
- ele.value = 'Borrar';
- ele.name = 'div'+num;
- ele.onclick = function () {borrar(this.name)}
- contenedor.appendChild(ele);
- }
- function borrar(obj) {
- fi = document.getElementById('f1');
- fi.removeChild(document.getElementById(obj));
- }
- </script>
- <?
- include("conexion.php");
- $sql1 = "select * from titulaciones where DNIProfesor = '".$fila['DNI']."'";
- $result1 = mysql_query($sql1, $GLOBALS["miConexion"]) or die(mysql_error());
- //Consulta que daría las titulaciones creadas con anterioridad para este `profesor (el DNI vendría por la url, no lo pongo para simplificar el código)
- echo '<form name="f" id="f1" method = "POST" action ="guardarProfesor.php" OnSubmit="return validar(this)">';
- echo '<div style="margin-left: 3%; width=200px;">
- Nombre: <input name="cNombre" type="text" value="'.$fila['nombre'].'">
- <strong>Titulaciones del profesor</strong> <br><br>';
- $sql1 = "select * from titulaciones where DNIProfesor = '".$fila['DNI']."'";
- $result1 = mysql_query($sql1, $GLOBALS["miConexion"]) or die(mysql_error());
- $i=0;
- while ($fila1= mysql_fetch_assoc($result1)){
- echo'
- - <input name="cNombreTitulacion'.$i.'" type="text" size="40" value="'.$fila1['nombreTitulacion'].'">
- <br><br>';
- $_SESSION['nTitulacion'.$i]=$fila1['nTitulacion'];
- $i++;
- }
- echo'
- <input type="button" value="Añadir titulación" onclick="crearTitulacion(this)">';
- <input name="botonGuardar" type="submit" value="Guardar">
- </form>';
- ?>
- </body>
- </html>
De esta manera yo podría añadir nuevas titulaciones, modificar las existentes, pero no eliminar las ya existentes, y me han dicho que para hacerlo de forma dinámica habría que usar Ajax, pero no lo conozco. Y otra de las opciones que me han dado es recargar la página, pero no sé cómo plantear el recargar la página...
Si pudieseis echarme una mano.
Muchas gracias