Foros del Web » Programando para Internet » PHP »

Eliminar registro en php y confirmacion en javascript

Estas en el tema de Eliminar registro en php y confirmacion en javascript en el foro de PHP en Foros del Web. Hola tengo una pequeña aplicacion y por cada registro estan dos opciones, uno para editarlo y el otro para eliminarlo. [Editar] [Borrar] 13977514 JOSE TOMAS ...
  #1 (permalink)  
Antiguo 18/02/2007, 15:49
 
Fecha de Ingreso: febrero-2005
Mensajes: 68
Antigüedad: 19 años, 9 meses
Puntos: 0
Eliminar registro en php y confirmacion en javascript

Hola tengo una pequeña aplicacion y por cada registro estan dos opciones, uno para editarlo y el otro para eliminarlo.

[Editar] [Borrar] 13977514 JOSE TOMAS CONTRERAS
[Editar] [Borrar] 14438880 LISANDRO MENDEZ

Me funciona muy bien pero desearia que cuando el usuario quiera eliminar un registro con la opcion aparezca un mensaje de confirmacion en javascript, es posible eso? he estado pensando un poco pero como todo el formulario esta hecho en una sola pagina se me ha hecho algo dificil el mismo, anexo envio el codigo para que lo puedan ver, gracias...

mysql_select_db(basededatos,$link) or die('No pudo seleccionarse la Base de Datos.');

if ($_POST)
{
$accion=$_POST["accion"];
$nombre=$_POST["nombre"];
$apellido=$_POST["apellido"];
$cedula=$_POST["cedula"];
$fechanac=$_POST["fechanac"];
$cel=$_POST["cel"];
$local=$_POST["local"];
$oficina=$_POST["oficina"];
$empresa=$_POST["empresa"];
$profesion=$_POST["profesion"];
$email=$_POST["email"];
$areavisita=$_POST["areavisita"];
if ($accion == 'e')
{
//-modificar
$ssql="UPDATE afiliado SET nombre = '$nombre', apellido = '$apellido',fechanac = '$fechanac', cel = '$cel',local = '$local',oficina = '$oficina', empresa = '$empresa',profesion = '$profesion',email = '$email',areavisita = '$areavisita' WHERE cedula=$cedula";
mysql_query($ssql,$link) or die('Error en UPDATE afiliados'.mysql_error());
}
elseif ($accion == 'i')
{
//-insertar una fila
$ssql ="INSERT INTO afiliado ( cedula , nombre , apellido , fechanac , cel , local , oficina , empresa , profesion , email , areavisita , fechaafiliacion )
VALUES ($cedula, '$nombre', '$apellido', '$fechanac', '$cel', '$local', '$oficina', '$empresa', '$profesion', '$email', '$areavisita', '$fecha');";
mysql_query($ssql,$link) or die('Error en INSERT afiliados'.mysql_error());
}
else
{
echo 'Error accion en el POST: '.$accion;
exit;
}
}
echo '<h3>Listado de afiliados de DOWNTOWN BEIRUT</h3>';

echo "<a href=consulaf.php?accion=i>Insertar</a><br><br>";
$result = mysql_query("SELECT * FROM afiliado ORDER BY cedula ",$link);
echo "<table width=600 border=1>";
echo " <td bgcolor=#CC0000> <font size=3 color=#FFFFFF face=arial, verdana, helvetica> <b>Acciones</b></td>";
echo " <td bgcolor=#3300FF> <font size=3 color=#FFFFFF face=arial, verdana, helvetica> <b>Cédula</b></td>";
echo " <td bgcolor=#3300FF> <font size=3 color=#FFFFFF face=arial, verdana, helvetica> <b>Nombre</b></td>";
echo " <td bgcolor=#3300FF> <font size=3 color=#FFFFFF face=arial, verdana, helvetica> <b>Apellido</b></td>";
echo " </tr>";

while($row = mysql_fetch_array($result)) {

// Código para cada fila
echo "<tr>";
echo "<td width=250>";
echo "<a href=consulaf.php?cedula=$row[cedula]&accion=e>[Editar] </a>
<a href=consulaf.php?cedula=$row[cedula]&accion=b>[Borrar]</a> </td>
<td width=300> <font size=3 color=#000000 face=arial, verdana, helvetica>$row[cedula] <br></td>
<td width=300> <font size=3 color=#000000 face=arial, verdana, helvetica>$row[nombre] <br></td>
<td width=300> <font size=3 color=#000000 face=arial, verdana, helvetica>$row[apellido] <br></td>";;

echo "</tr>";

}
echo "</table>";
echo "<a href=menuadministrador.php>Volver</a>";

mysql_free_result($result);

if ($_GET)
{
$accion=$_GET['accion'];
//-accion 'e' es editar; 'b' es borrar; 'i' es insertar

if ($accion=='b')
{
//-voy a borrar uno
$cedula=$_GET[cedula];
$result = mysql_query("DELETE FROM afiliado WHERE cedula=$cedula ",$link);
mysql_close($link);
header("Location: menuadministrador.php");
exit;
}
elseif ($accion=='e')
{
//-voy a editar y presentarlo en el formulario
$cedula=$_GET[cedula];
$result = mysql_query("SELECT * FROM afiliado WHERE cedula=$cedula ",$link);
$row = mysql_fetch_array($result);
$nombre=$row["nombre"];
$apellido=$row["apellido"];
$fechanac=$row["fechanac"];
$cel=$row["cel"];
$local=$row["local"];
$oficina=$row["oficina"];
$empresa=$row["empresa"];
$profesion=$row["profesion"];
$email=$row["email"];
$areavisita=$row["areavisita"];
$lectura="true";
mysql_close($link);
$formulario="Formulario para Modificar";
}
elseif ($accion=='i')
{
$cedula="";
$nombre="";
$apellido="";
$fechanac="";
$cel="";
$local="";
$oficina="";
$empresa="";
$profesion="";
$email="";
$areavisita="";
$lectura="false";
$formulario="Formulario para Insertar";
}
else
{
echo 'Error accion en el GET: '.$accion;
exit;
}

//-a continuación va el formulario que sirve tanto para insertar como para modificar
?>
  #2 (permalink)  
Antiguo 18/02/2007, 17:12
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 18 años, 2 meses
Puntos: 9
Re: Eliminar registro en php y confirmacion en javascript

Lo que quieres se puede hacer con javascript con la funcion window.confirm
Quizas debas leer un poco sobre como utilizar esa funcion. Saludos.
__________________
->Aprender es un proceso que incluye el error..
  #3 (permalink)  
Antiguo 18/02/2007, 17:59
 
Fecha de Ingreso: mayo-2006
Mensajes: 178
Antigüedad: 18 años, 6 meses
Puntos: 7
Re: Eliminar registro en php y confirmacion en javascript

Supongo que el boton que tenes para eliminar el registro es un input del tipo submit y al hacerle click procesas el form.

Entonces, cambiale el tipo a button y en el evento onclick armate una funcioncita en javascript que tire la confirmacion.

<input type="button" onclick="javascript:eliminar();">

la funcion eliminar podria ser mas o menos asi

Código:
 
function eliminar()
{
if(window.confirm('Desea eliminar el registro???'))
{
document.nombreDelFormulario.submit();
}
}
A grosso modo seria algo asi.

Saludos.
  #4 (permalink)  
Antiguo 19/02/2007, 08:54
Avatar de holahola  
Fecha de Ingreso: mayo-2005
Ubicación: Móstoles - (Madrid)
Mensajes: 214
Antigüedad: 19 años, 6 meses
Puntos: 1
Re: Eliminar registro en php y confirmacion en javascript

Creo que tu problema se resolvería cambiando:

Código:
if ($accion=='b')
{
//-voy a borrar uno
$cedula=$_GET[cedula];
$result = mysql_query("DELETE FROM afiliado WHERE cedula=$cedula ",$link);
mysql_close($link);
header("Location: menuadministrador.php");
exit;
}

por:


Código:
	if ($accion=='b')
	{
		//-voy a borrar uno
		$cedula=$_GET['cedula'];
		$confirmado=$_GET['confirmado'];
		if (!isset($confirmado))
		{
?>	
			<script>
			var r = confirm("¿Eliminar <?echo 'Cédula '.$cedula?>?");
			if (r){ 
				location.href='?accion=b' 
						+ '&confirmado=S' 
						+ '&cedula=<?echo $cedula?>'
			}else{
				location.href='menuadministrador.php' 
			}
			</script> 
<?
			exit;

		}
		elseif ($confirmado == 'S')
		{

			$result = mysql_query("DELETE FROM afiliado WHERE cedula=$cedula ",$link);
			mysql_close($link);
			header("Location: menuadministrador.php");
			exit;
		}
	}

Creo que del codigo de tu "pequeña aplicación" soy un poco responsable:
http://www.forosdelweb.com/showpost....4&postcount=20

Los "location: menuadministrador.php" suponiendo que este codigo se llame así, si no tendrás que cambiarlo.


Un saludo.

Última edición por holahola; 19/02/2007 a las 09:19
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 13:02.