Foros del Web » Programando para Internet » PHP »

Sobre Delete

Estas en el tema de Sobre Delete en el foro de PHP en Foros del Web. Hola amigos, a ver si alguien me puede ayudar. Tengo un pequeño formulario en el que solo introduces un número, que en realidad es la ...
  #1 (permalink)  
Antiguo 30/03/2007, 10:54
Avatar de CHUJALT  
Fecha de Ingreso: enero-2002
Mensajes: 60
Antigüedad: 22 años, 3 meses
Puntos: 0
Sobre Delete

Hola amigos, a ver si alguien me puede ayudar.
Tengo un pequeño formulario en el que solo introduces un número, que en realidad es la id de una base de datos mysql, con ese número borras toda la fila de la tabla de la BD.
El control de que se pueda borrar o no la fila lo tengo hecho, por si se equivoca de número, pero lo que me falla es poner un mensaje de acierto o error, es decir, que si el delete se ha producido diga que se ha realizado con exito, y si no se ha producido porque ha introducido un número que no le correspondía, por ejemplo, que diga que no se ha podido realizar el borrado.

Gracias amigos.
  #2 (permalink)  
Antiguo 30/03/2007, 11:23
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Sobre Delete

hola CHUJALT, pues pregunta por el valor q retorna el mysql_query asi:
Código PHP:
$id $_POST['id'];
$res mysql_query("DELETE FROM nom_tabla WHERE id = $id");
if (
$res){
  echo 
'se ha realizado con exito el borrado';
}else{
  echo 
'no se ha podido realizar el borrado';

Saludos
__________________

  #3 (permalink)  
Antiguo 30/03/2007, 11:28
Avatar de Infernal  
Fecha de Ingreso: septiembre-2004
Ubicación: Tamaulipas, Mexico
Mensajes: 124
Antigüedad: 19 años, 7 meses
Puntos: 0
Re: Sobre Delete

Cita:
Iniciado por gerson Ver Mensaje
hola CHUJALT, pues pregunta por el valor q retorna el mysql_query asi:
Código PHP:
$id $_POST['id'];
$res mysql_query("DELETE FROM nom_tabla WHERE id = $id");
if (
$res){
  echo 
'se ha realizado con exito el borrado';
}else{
  echo 
'no se ha podido realizar el borrado';

Saludos
Con eso solo te mostrara si se realizo la consulta correctamente, para saber si se borraron las filas usa la funcion: mysql_affected_rows

Saludos.
  #4 (permalink)  
Antiguo 30/03/2007, 11:43
Avatar de CHUJALT  
Fecha de Ingreso: enero-2002
Mensajes: 60
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: Sobre Delete

Gracias, pero no me funciona. Yo tengo esto, con lo que me habeis dicho:

<?
$borrar = $_POST['borrar'];
if (!isset($borrar)){
echo "";
}
else
{
include("conectar.php");
$ass = mysql_query("delete from nom_tabla where id='$borrar' and ciudad='$ciudad'");
if ($ass){
echo 'se ha realizado con exito el borrado';
}else{
echo 'no se ha podido realizar el borrado';
}

}
?>

Pues tanto se borre o no se borre me sale siempre la primera opción 'se ha realizado con exito el borrado'.

Gracias por vuestra ayuda.
  #5 (permalink)  
Antiguo 30/03/2007, 11:48
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Sobre Delete

Tienes razon Infernal debe de usar mysql_affected_rows
__________________

  #6 (permalink)  
Antiguo 30/03/2007, 12:02
Avatar de CHUJALT  
Fecha de Ingreso: enero-2002
Mensajes: 60
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: Sobre Delete

Gracias amigos por darme la idea, como solo borra un registro o ninguno lo consegui asi:

if (mysql_affected_rows() == 1)
{
echo 'se ha realizado con exito el borrado';
}else{
echo 'no se ha podido realizar el borrado';
}
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 14:11.