PHP - Consulta borrar productos de tabla

 
Vista:
Imágen de perfil de facundo

Consulta borrar productos de tabla

Publicado por facundo (185 intervenciones) el 14/12/2016 17:51:18
Buenas, tengo una duda, quiero borrar un producto (una fila entera) de una tabla, pero lo tengo que hacer exactamente de la siguiente manera: tengo una pagina "administracion productos" con una tabla con todos los productos, en cada uno una imagen al lado a la cual cuando le doy click me tiene que borrar ese producto junto con todos sus registros (osea la fila entera).

se como eliminar datos especificos de una tabla, pero no se como hacer para eliminar una fila entera del producto seleccionado

Les dejo adjuntado todo el proyecto por las dudas, igualmente el codigo que necesito hacer se encuentra en "admin-productos.php" y "borrar.php". En la administracion de productos van a ver que le puse un boton de submit que lleva a borrar.php, pero en realidad ahi va una imagen.

Ya busque en google pero toda la info sobre insert era como hacerlo y como borrar registros especificos y no una fila entera como en este caso, como se podria hacer?

Gracias por su tiempo!!! pronto cuando adquiera mas conocimientos voy a poder estar ayudando yo tambien. Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Consulta borrar productos de tabla

Publicado por kip (877 intervenciones) el 14/12/2016 20:53:27
Hola, para eliminar una fila de una tabla simplemente debes usar una sintaxis parecida a esta:

1
DELETE FROM table WHERE id=algun_id

De esa forma eliminas una fila, ahora bien si no te sirve entonces no se como estas interpretando la palabra 'fila' con respecto a una tabla, ya que aqui dices:

cuando le doy click me tiene que borrar ese producto junto con todos sus registros (osea la fila entera)

Te refieres a que aquel producto tiene registros en varias tablas?

Si es asi puedes usar JOIN para hacer el DELETE algo asi:

1
DELETE t1,t2 FROM tabla1 AS t1 INNER JOIN tabla2 AS t2 ON t1.id=t2.id_tabla1 where t1.id = algun_id

Podrias comentarnos exactamente a que te refieres con 'todos sus registros (osea la fila entera)' ??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de facundo

Consulta borrar productos de tabla

Publicado por facundo (185 intervenciones) el 14/12/2016 21:17:47
Hola, a lo que me refiero con todos los registors de la fila es lo siguiente:

en mi schema de mysql tengo la tabla productos, desde php hice un codigo para agregar productos a la base de datos y mostrarlos desde la pagina, osea hice un formulario que agrega productos a la tabla "productos". Le agrego el nombre, descripcion,precio e imagen. Todo esto va en una tabla (como podes ver en el archivo adjunto que deje en un .rar "panel_productos.php","form-alta-producto.php" y "alta-producto.php")

En la pagina hay una tabla con todos los productos agregados, y al lado de cada producto tengo un boton o imagen al que cuando le doy click tengo que borrar ese producto(el de la fila que esta a la izquierda del boton o imagen borrar.

Probe de varias maneras pero me daba error, creo que lo que no estoy haciendo bien es el DELETE

Se entendio? Sino subo imagenes y el codigo escrito aca
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Consulta borrar productos de tabla

Publicado por kip (877 intervenciones) el 15/12/2016 01:36:52
En ese caso simplemente usando una sentencia parecida a esta, claro que con tus datos, deberia funcionar:

1
DELETE FROM table WHERE id=algun_id

Debes recordar que cada registro debe tener un campo unico para poder identificarlo, en la mayoria de los casos se usa un ID de tipo entero y autoincrementable como LLAVE PRIMARIA, es decir este id sera la referencia para poder eliminar este registro.

Puedes colocar como haces tu para eliminar ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de facundo

Consulta borrar productos de tabla

Publicado por facundo (185 intervenciones) el 15/12/2016 19:26:53
Esa es la logica que pienso, pero no se como hacerlo. Mira, el codigo de borrar.php e este:
1
2
3
4
5
6
require "conexion.php";
	$sql="DELETE from prductos where prd_id=cat_id";
	$resultado=mysqli_query($link,$sql) or die (mysqli_error($resultado));
	mysqli_close($link);
	include "encabezado.php";
?>

El error que me tira este codigo es Warning: mysqli_error() expects parameter 1 to be mysqli, boolean given in C:\xampp\htdocs\sistema\borrar.php on line 6

Osea donde el id del producto sea igual al id de la categoria, pero no estaria eliminando todos los productos de la tabla en donde el id sea igual al id? Yo solo quiero borrar la fila (osea todo el producto que esta a la izquierda del boton borrar) si vez el archivo que subi te vas a dar cuenta!!

lo tengo que hacer dinamico, osea, que si agrego un producto nuevo, se agrege en la tabla tambien un boton o imagen "borrar" para eliminar ese producto agregado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de facundo

Consulta borrar productos de tabla

Publicado por facundo (185 intervenciones) el 15/12/2016 19:56:30
Probe con este codigo. Me sigue dando error no encuentro la forma de hacerlo, ayuda!!


1
2
3
4
5
6
7
8
9
<?php
	$tdid= $_POST[$tdid]; // esta variable la defini en el archivo panel_productos.php (adjuntado en primer mensaje)
	$titulo = "Panel de control - Proyecto integrador";
	require "conexion.php";
	$sql="DELETE from prductos where prd_id ='".$tdid."'";
	$resultado=mysqli_query($link,$sql) or die (mysqli_error($resultado));
	mysqli_close($link);
	include "encabezado.php";
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alejandro
Val: 575
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Consulta borrar productos de tabla

Publicado por Alejandro (157 intervenciones) el 15/12/2016 23:41:54
Hola facundo, me parece que te faltaron algunas cosas, mira modifique tu archivo panel_productos

en esta parte :

1
2
3
4
5
6
7
8
9
10
11
12
13
<tr>
<td class="lista"> <?php echo $fila["prd_id"]; ?></td>
<td class="lista"> <?php echo $fila["prd_nombre"]; ?></td>
<td class="lista">	<?php echo $fila["prd_descripcion"]; ?></td>
<td class="lista"> <?php echo $fila["prd_precio"]; ?> </td>
<td class="lista">  <img src="imagenes/<?php echo $fila["prd_foto1"]; ?>"> </td>
<td class="lista"> <img src="imgs/editar3.png"> </td>
<form action="borrar.php" method="post">
 <input type="hidden" value="<?php echo $fila["prd_id"]; ?>" name="prd_id">
<td class="lista"> <input type="submit" value="Borrar producto"> </td>
</form>
 
</tr>

Envio el prd_id en un input de tipo hidden.


Despues el nombre de la tabla estaba mal escrito en la consulta del archivo borrar.php

1
2
3
4
5
6
7
8
$filass=$_POST["prd_id"];
echo $filass;
$titulo = "Panel de control - Proyecto integrador";
require "conexion.php";
$sql="DELETE from productos where prd_id=$filass";
$resultado=mysqli_query($link,$sql) or die (mysqli_error($resultado));
mysqli_close($link);
include "encabezado.php";

Prueba con esto y nos comentas.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de facundo

Consulta borrar productos de tabla

Publicado por facundo (185 intervenciones) el 16/12/2016 22:41:47
Me sirvio, muchas gracias!! sigo con mi aprendizaje.. saludos!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar