Foros del Web » Programando para Internet » PHP »

Problema con delete from

Estas en el tema de Problema con delete from en el foro de PHP en Foros del Web. Hola tengo un problema con delete from , no puedo borrar los registro me tira este error Error en consulta :Query was empty Código PHP: ...
  #1 (permalink)  
Antiguo 10/05/2009, 16:17
Avatar de spolli  
Fecha de Ingreso: diciembre-2008
Mensajes: 68
Antigüedad: 15 años, 4 meses
Puntos: 0
Problema con delete from

Hola tengo un problema con delete from , no puedo borrar los registro
me tira este error
Error en consulta :Query was empty
Código PHP:
<? include("../../conexion.php");
$id=$_GET["id"];

$id=$_POST['id'];
$titulo=$_POST['titulo'];
$titulo1=$_POST['titulo1'];
$cuerpo=$_POST['cuerpo'];
$foto=$_POST['foto'];
$fecha=$_POST['fecha'];

// Hago la consulta a la bd
$result=mysql_query("SELECT * FROM fede WHERE id='$id'",$conexion);
while(
$row=mysql_fetch_array($result))

//Borro los registro 
$sql "DELETE FROM fede id='$id', titulo='$titulo', titulo1='$titulo1', cuerpo='$cuerpo', foto='$foto' fecha='$fecha' WHERE id=$id";
$result mysql_query($sql$conexion) or die("Error en consulta $sql:".mysql_error() );
  #2 (permalink)  
Antiguo 10/05/2009, 16:21
Avatar de newboy_master  
Fecha de Ingreso: enero-2008
Ubicación: Granada
Mensajes: 882
Antigüedad: 16 años, 3 meses
Puntos: 46
Respuesta: Problema con delete from

Posiblemente el error sea por la variable $id, que está definida 2 veces, cada una con un método distinto, prueba cambiandole el nombre a una para que en las consultas se diferencie.

Salu2.
__________________
@jslirola - Programador Web Freelance.
  #3 (permalink)  
Antiguo 10/05/2009, 16:27
Avatar de spolli  
Fecha de Ingreso: diciembre-2008
Mensajes: 68
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Problema con delete from

lo cambie pero me sigue tirando el mismo error
  #4 (permalink)  
Antiguo 10/05/2009, 16:30
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con delete from

Código php:
Ver original
  1. $sql = "DELETE FROM fede id='$id', titulo='$titulo', titulo1='$titulo1', cuerpo='$cuerpo', foto='$foto' fecha='$fecha' WHERE id=$id";

Tienes idea de como estructurar una consulta DELETE en MySQL?

Código sql:
Ver original
  1. DELETE FROM tabla WHERE campo1 = 'valor1' AND campo2 = 'valor2'

  #5 (permalink)  
Antiguo 10/05/2009, 16:32
Avatar de newboy_master  
Fecha de Ingreso: enero-2008
Ubicación: Granada
Mensajes: 882
Antigüedad: 16 años, 3 meses
Puntos: 46
Respuesta: Problema con delete from

Justo estaba mirando la sintaxis de "DELETE", me parecía extraño.

Algo de teoría:

http://www.aulaclic.es/sql/t_6_5.htm

Salu2
__________________
@jslirola - Programador Web Freelance.
  #6 (permalink)  
Antiguo 10/05/2009, 17:38
Avatar de spolli  
Fecha de Ingreso: diciembre-2008
Mensajes: 68
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Problema con delete from

a ver lo que quiero hacer es borrar todos los registro de la fila , si hago esto supuestamente se tiene que borra todo?

Código PHP:
$sql "DELETE FROM fede WHERE id='$id'";
$result mysql_query($sql$conexion) or die("Error en consulta $sql:".mysql_error() );

//Redirecciono
header("location:titulos.php"); 
  #7 (permalink)  
Antiguo 10/05/2009, 19:20
Avatar de reyesoft  
Fecha de Ingreso: abril-2006
Ubicación: San Rafael, Mendoza
Mensajes: 311
Antigüedad: 18 años
Puntos: 15
Respuesta: Problema con delete from

Cita:
Iniciado por spolli Ver Mensaje
a ver lo que quiero hacer es borrar todos los registro de la fila , si hago esto supuestamente se tiene que borra todo.
Sí, funcionará, pero te recomiendo hacer un intval() antes:

Código PHP:
$id=intval($_GET["id"]);
$sql "DELETE FROM fede WHERE id='$id'";
$result mysql_query($sql$conexion) or die("Error en consulta $sql:".mysql_error() ); 
Un saludo...
__________________
Pablo Reyes

Compra/venta saldos PayPal, Skrill, Neteller, Bitcoins, etc.
  #8 (permalink)  
Antiguo 11/05/2009, 00:59
 
Fecha de Ingreso: octubre-2008
Mensajes: 387
Antigüedad: 15 años, 6 meses
Puntos: 18
Respuesta: Problema con delete from

Cita:
Iniciado por spolli Ver Mensaje
a ver lo que quiero hacer es borrar todos los registro de la fila , si hago esto supuestamente se tiene que borra todo?

Código PHP:
$sql "DELETE FROM fede WHERE id='$id'";
$result mysql_query($sql$conexion) or die("Error en consulta $sql:".mysql_error() );

//Redirecciono
header("location:titulos.php"); 
Todos los registros de la fila? De que estas hablando Willis?

Las filas son registros, los registros son filas. Lo que haces en una sentencia DELETE es borrar todos los registros que cumplan con los criterios estblecidos en la clausula WHERE.

Ahora para borrar ciertos campos de un registro realmente DELETE no es la opcion. Borrar un campo se entiende como blanquearlo y al blanquearlo en realidad lo estamos seteando, lo que te lleva a usar un UPDATE, que el valor podria variar segun tu mecesidad. (NULL, blancos, ceros, etc).

Fijate que es lo que queres realmente. Pero fijate tal como te dice el usuario okram, un DELETE no lleva la designacion de los campos de la tabla es solo "DELETE FROM table WHERE criteria".

Saludos.
  #9 (permalink)  
Antiguo 12/05/2009, 06:14
Avatar de spolli  
Fecha de Ingreso: diciembre-2008
Mensajes: 68
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Problema con delete from

gracias a todos por la ayuda ya , esta funcionando bien el script.

asi quedo
Código PHP:
$id=$_GET["id"];

//Borro los registro 
$sql "DELETE FROM fede WHERE id='$id'";
$result mysql_query($sql$conexion) or die("Error en consulta $sql:".mysql_error() ); 
  #10 (permalink)  
Antiguo 12/05/2009, 19:06
Avatar de reyesoft  
Fecha de Ingreso: abril-2006
Ubicación: San Rafael, Mendoza
Mensajes: 311
Antigüedad: 18 años
Puntos: 15
Respuesta: Problema con delete from

Cita:
Iniciado por spolli Ver Mensaje
gracias a todos por la ayuda ya , esta funcionando bien el script.

asi quedo
Código PHP:
$id=$_GET["id"];

//Borro los registro 
$sql "DELETE FROM fede WHERE id='$id'";
$result mysql_query($sql$conexion) or die("Error en consulta $sql:".mysql_error() ); 
Está perfecto, pero cambia la 1º línea por
Código PHP:
$id=intval($_GET["id"]); 
Eso hace que no puedan hacerte SQL Injection.

Un saludo...
__________________
Pablo Reyes

Compra/venta saldos PayPal, Skrill, Neteller, Bitcoins, etc.
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 06:17.