Foros del Web » Programando para Internet » PHP »

Confirmar borrado de entrada de tabla en DB

Estas en el tema de Confirmar borrado de entrada de tabla en DB en el foro de PHP en Foros del Web. Hola. Tengo un script en php con el que borro entradas de una tabla, por que ya estan viejas o por que estan mal..., pero ...
  #1 (permalink)  
Antiguo 25/05/2006, 03:48
 
Fecha de Ingreso: mayo-2006
Mensajes: 17
Antigüedad: 18 años, 6 meses
Puntos: 0
Confirmar borrado de entrada de tabla en DB

Hola.
Tengo un script en php con el que borro entradas de una tabla, por que ya estan viejas o por que estan mal..., pero una vez seleccionas y borras, si te has equivocado no puedes arreglarlo.
Código:
<?php 
session_start();
//eliminar de tabla XX
require_once('../clases/auth.php');
 if (check_admin_user())
	  {
$conn= db_connect();
$Id = $HTTP_GET_VARS['Id'];
$sql= "delete from tabla where Id= $Id";
$result = mysql_query($sql, $conn);
header('location: '.$HTTP_SERVER_VARS['HTTP_REFERER']);
}
else {
header('location: '.$HTTP_SERVER_VARS['HTTP_REFERER']);
}
?>
Mi pregunta es: ¿como hacer para que antes de borrar pregunte si confirmas el borrado?
php + mysql.
Gracias.
  #2 (permalink)  
Antiguo 25/05/2006, 05:22
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 20 años, 3 meses
Puntos: 102
Cita:
¿como hacer para que antes de borrar pregunte si confirmas el borrado?
¿Preguntar de qué forma?; si lo que buscas es "el mensaje de alerta" (confirm) con los botónes "aceptar/cancelar" te digo que eso se hace con JavaScript, y supongo lo encontrarás en las FAQ de aquel foro.

Por parte de PHP lo que puedes haces es crear un archivo intermediario que, mediante un enlace --de confirmación-- dirija al script que tienes arriba.

Simple:
Código PHP:
$Id $_GET['Id'];
echo 
"¿Seguro que quiere eliminar el 'lo que sea :-)' con id ".$id."?<br>";
echo 
"<a href=\"tu_fichero_de_arriba.php?id=".$id."\">Sí</a> / <a href=\"".$_SERVER['HTTP_REFERER']."\">No</a>"
Ahora, como nota, estás pasando el valor a eliminar por URL, ten encuenta que cualquiera puede acceder al archivo pasando valores a discreción y, por ende, eliminarte sus correspondientes registros (ó lo que sean). Creo que mínimo deberías considerar insertar un código captcha (lo encuentras en las FAQ).. pero bueno, ya sabrás tú.

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 25/05/2006, 17:22
 
Fecha de Ingreso: mayo-2006
Mensajes: 17
Antigüedad: 18 años, 6 meses
Puntos: 0
Si, creo que será la mejor forma y la más segura. De todas maneras el código que puse esta en modo prueba y no esta terminado, pero para borrar hay que ser usuario admin y lo probé y no borraba si no habías accedido como usuario autorizado a las páginas anteriores.
¿es posible un borrado pasando valores a discrepción de esta forma?.
Buscare algo más de información antes de meter la pata.
Gracias, y me pasare por el foro de JavaScript también..
Un saludo.

Última edición por ermigue40; 25/05/2006 a las 17:35
  #4 (permalink)  
Antiguo 25/05/2006, 17:30
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 9 meses
Puntos: 6
Bueno yo lo que hago es
Código PHP:
echo "<script>confirm('Seguro que desea eliminar el registro');</script>"
__________________
www.dataautos.com
  #5 (permalink)  
Antiguo 25/05/2006, 18:08
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 20 años, 3 meses
Puntos: 102
Cita:
para borrar hay que ser usuario admin y lo probé y no borraba si no habías accedido como usuario autorizado a las páginas anteriores.
¿es posible un borrado pasando valores a discrepción de esta forma?
No si antepones la otra condición, como la de ser administrador. Así pués (en principio) no debería haber problema.

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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:09.