Foros del Web » Programando para Internet » PHP »

Eliminacion de datos

Estas en el tema de Eliminacion de datos en el foro de PHP en Foros del Web. Buenas a todos... Primero, estoy haciendo un sistema con PHP y MYSQL para registrar estudiantes.. cada registro de estudiantes, se divide en 4 partes ( ...
  #1 (permalink)  
Antiguo 08/11/2013, 21:45
 
Fecha de Ingreso: noviembre-2013
Mensajes: 3
Antigüedad: 10 años, 5 meses
Puntos: 0
Eliminacion de datos

Buenas a todos... Primero, estoy haciendo un sistema con PHP y MYSQL para registrar estudiantes.. cada registro de estudiantes, se divide en 4 partes ( datos del estudiante, de su padre, de su madre y de su representante).. En el modulo Eliminar, borra correctamente los datos de los estudiantes que yo quiera, pero tiene un problema que necesito Urgentemente arreglar! Si hay 2 estudiantes registrados con el mismo padre, madre y representante (por ejemplo 2 hermanos..) al eliminar 1 de estos 2 estudiantes, me borra los datos y me deja al otro estudiante huefano ... cuando lo ideal seria que si existe otro estudiante usando los datos de sus padres y representante, solo elimine los datos del estudiante pero no tengo idea de como llegar ahi..

Desde ya les agradezco en lo que me puedan ayudar..

Gracias
  #2 (permalink)  
Antiguo 08/11/2013, 23:31
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Eliminacion de datos


<saludos>
Pues no hablas nada de como está a nivel de base de datos distribuida la data,
así que mejor cuenta un poco más como está distribuida la data en tablas y con esto
ya se podrá tener un mejor panorama para comentarte el tema
Sin embargo a vuelo de pajaro, pues antes de borrar un estudiante se deberia revisar
si los acudientes de este tienen relación con otro, y si es así, que no borre sino al
estudiante actual sin tocar a los acudientes.
</saludos>
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #3 (permalink)  
Antiguo 09/11/2013, 06:00
 
Fecha de Ingreso: noviembre-2013
Mensajes: 3
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: Eliminacion de datos

Hola!

En este modulo intervienen 4 tablas: estudiante, padre, madre y representante. Cada uno con su respectivo ID como clave primaria (Estudiante: cedula_escolar, padre: cipadre, madre: cimadre y representante: cirepre). Y si, como dices, lo que habria que hacer es revisar si tiene mas relaciones con otro estudiante, pero nose exactamente como hacerlo .
  #4 (permalink)  
Antiguo 09/11/2013, 10:01
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Eliminacion de datos

Cita:
Iniciado por miguelgh72 Ver Mensaje
Hola!

En este modulo intervienen 4 tablas: estudiante, padre, madre y representante. Cada uno con su respectivo ID como clave primaria (Estudiante: cedula_escolar, padre: cipadre, madre: cimadre y representante: cirepre). Y si, como dices, lo que habria que hacer es revisar si tiene mas relaciones con otro estudiante, pero nose exactamente como hacerlo .
<saludos>
Uhm, siento que falta algo, si tienes las 4 tablas para cada entidad (que de hecho me parece extenso, yo usaría solo 1 tabla para los 4 y uno de los campos me diría que tipo de persona es)
Donde los relacionas? Es decir, si tienes el id de cada uno, en que tabla quedan relacionados?
</saludos>
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #5 (permalink)  
Antiguo 09/11/2013, 14:00
 
Fecha de Ingreso: noviembre-2013
Mensajes: 3
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: Eliminacion de datos

Los PK de la tabla de madre,padre y representante los tengo como FK en la tabla de estudiantes.. luego para lo que son consultas, eliminar, modificar etc, lo que hago es igualar los indices y todo va bien. Te doy un ejemplo de como tengo el eliminar actualmente ( Aparece una tabla de >emergencia<, no te la nombre antes porque esta solo tiene 4 atributos y es la menos importante de las 5 tablas..)

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>Eliminar</title>
  4. <?php include('sesion.php'); ?>
  5. </head>
  6.  
  7. <body>
  8. <?php
  9. include ('conexion.php');
  10.  
  11. $lol=mysql_query("select estudiante.*, madre.*, padre.*, representante.*, emergencia.* from estudiante,madre,padre, representante,emergencia where estudiante.cedescolar='".$_REQUEST['ciescolar']."' and estudiante.cipa = padre.cipa and estudiante.cima = madre.cima and estudiante.cire= representante.cire and estudiante.ciemer=emergencia.ciemer",$conectar)
  12. or  die("error:".mysql_error());
  13.  
  14.  
  15. if ($reg=mysql_fetch_array($lol))
  16. {
  17.   mysql_query("delete  estudiante.*, madre.*, padre.*, representante.*, emergencia.*  from  estudiante,madre,padre,representante,emergencia where estudiante.cedescolar='".$_REQUEST['ciescolar']."'  and estudiante.cipa = padre.cipa and estudiante.cima = madre.cima and estudiante.cire= representante.cire and estudiante.ciemer=emergencia.ciemer",$conectar) or
  18.     die("Problemas en el select:".mysql_error());
  19.   echo"<script type=\"text/javascript\">alert('Se borro el registro correctamente'); window.location='principal.php';</script>";
  20. }
  21. else
  22. {
  23.   echo"<script type=\"text/javascript\">alert('El registro que desea eliminar no existe, por favor vuelva intentarlo'); window.location='borrarh.php';</script>";
  24. }
  25. mysql_close($conectar);
  26. ?>
  27. </body>
  28. </html>

Si le ves algo extraño al codigo.. Quiero destacar que con este sistema es que he ido aprendiendo de PHP y MySQL y de hecho varios hilos de este foro me han ayudado bastante.
  #6 (permalink)  
Antiguo 09/11/2013, 18:23
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 1 mes
Puntos: 96
Respuesta: Eliminacion de datos

Se me hace que las fk los tienes configuradas en cascada on delete pero.eso ya es ptoblema de mysql no de php, ademas que en la.consulta solo tienes que eliminar la id de la tabla alumno nada mas
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #7 (permalink)  
Antiguo 10/11/2013, 14:25
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Eliminacion de datos

<saludos>
Pues la verdad no había visto antes ese tipo de delete "grupal",
imagino es por eso que se borran los 4 datos de las 4 tablas de una vez

Ahora, yo creería que no debes borrar los datos porque en el momento
en que le pidan certificados al colegio que va a pasar?
Lo que creo es que deberìas manejar campos que sirvan para decir
si el registro está o no habilitado
Y si persistes con lo de eliminar, pues solo diría que las emergencias
y el estudiante deberìa ser eliminado, pero antes del delete,
deberías hacer un select de la tabla de estudiante trayendo el id de la madre, el padre y el acudiente, y luego por cada uno de estos armar otro query y ver si
actualmente se encuentran en uno o más estudiantes
Si el resultado para cada cual es mayor a uno, no eliminarlos para
no dejar huerfanos a los otros estudiantes
Revisa eso y nos cuentas
</saludos>
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com

Etiquetas: mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:53.