Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/09/2011, 23:35
Felipe3969
 
Fecha de Ingreso: septiembre-2011
Mensajes: 8
Antigüedad: 12 años, 7 meses
Puntos: 0
Duda. Eliminar datos mysql

Estimados, me encuentro con una duda sobre como eliminar datos a traves de php en mysql.
La forma de ingreso de datos lo hago asi:

Código PHP:
Ver original
  1. <?php
  2. //1. Crear conexión a la Base de Datos
  3. $conexion = mysql_connect("localhost","root","holamundo");
  4. if (!$conexion) {
  5. die("Fallo la conexión a la Base de Datos: " . mysql_error());
  6. }
  7. //2. Seleccionar la Base de Datos a utilizar
  8. $seleccionar_bd = mysql_select_db("agenda", $conexion);
  9. if (!$seleccionar_bd) {
  10. die("Fallo la selección de la Base de Datos: " . mysql_error());
  11. }
  12. //3. Tomar los campos provenientes del Formulario
  13. $rit = $_POST['rit'];
  14. $ruc = $_POST['ruc'];
  15. $horas = $_POST['horas'];
  16. $delito = $_POST['delito'];
  17. $estado = $_POST['estado'];
  18. //4. Insertar campos en la Base de Datos (No inserto el id_empleado ya que se genera automaticamente)
  19. $insertar = mysql_query("INSERT INTO condenas (rit, ruc, horas, delito, estado) VALUES ('{$rit}', '{$ruc}', '{$horas}', '{$delito}', '{$estado}')", $conexion);
  20. if ($insertar) {
  21. echo ("Datos Guardados");
  22. }
  23. //4. Cerrar conexión a la Base de Datos
  24. mysql_close($conexion);
  25. ?>

y las muestro así:

Código PHP:
Ver original
  1. <?php
  2. $link = mysql_connect("localhost", "root", "holamundo");
  3. mysql_select_db("agenda", $link);
  4. $result = mysql_query("SELECT  * FROM condenas", $link);
  5. if ($row = mysql_fetch_array($result)){
  6.    echo "<table border = '1'> \n";
  7.    echo "<tr><td><b>id</b></td><td><b>RIT</b></td><td><strong>RUC</strong></td><td><strong>Horas</strong></td><td><strong>Delito</strong></td><td><strong>Estado</strong></td><td><strong>Acciones</strong></td></b></tr> \n";
  8.    do {
  9.       echo "<tr><td>".$row["id"]."</td><td>".$row["rit"]."</td><td>".$row["ruc"]."</td><td>".$row["horas"]."</td><td>".$row["delito"]."</td><td>".$row["estado"]."</td><td> "."<a href='eliminar_dato.php'>Eliminar</a>"." - Editar</td></tr>";
  10.    } while ($row = mysql_fetch_array($result));
  11.    echo "<tr><td><b>id</b></td><td><b>RIT</b></td><td><strong>RUC</strong></td><td><strong>HORAS</strong></td><td><strong>Delito</strong></td><td><strong>Estado</strong></td><td><strong>Acciones</strong></td></b></tr></table> \n";
  12. } else {
  13. echo "¡ No se ha encontrado ningún registro !";
  14. }
  15. ?>

Si se fijan, es una tabla q muestra los datos ya ingresados. Al final de cada fila se encuentra un link Eliminar el cual apunta a eliminar_dato.php y el cual deberia teóricamente eliminar el registro a traves de la id (el cual esta auto_increment).
No lo hace, me tira un "error del servidor"

eliminar_dato.php contiene (y creo que esta acá el error):

Código PHP:
Ver original
  1. ?php
  2. $link = mysql_connect("localhost","root","holamundo");
  3. if (!$link) {
  4. die("Fallo la conexión a la Base de Datos: " . mysql_error());
  5. }
  6. //2. Seleccionar la Base de Datos a utilizar
  7. $seleccionar_bd = mysql_select_db("agenda", $link);
  8. if (!$seleccionar_bd) {
  9. die("Fallo la selección de la Base de Datos: " . mysql_error());
  10. }
  11. $eliminar = mysql_query("DELETE FROM condenas WHERE '$id'" , $link);
  12. }
  13. ?>


Que estoy haciendo mal? dado que en phpmyadmin hago:

Código MySQL:
Ver original
  1. DELETE FROM condenas WHERE id=8

asumiendo que existe id=8 y se elimina el registro.
adjunto una imagen, para visualizar lo que quiero.
Saludos