Foros del Web » Programando para Internet » PHP »

Eliminar fila en BD desde PHP

Estas en el tema de Eliminar fila en BD desde PHP en el foro de PHP en Foros del Web. Estoy tratando de hacer una funcion eliminar en una tabla, por cada fila que se extraiga de la BD que se muestre un boton eliminar ...
  #1 (permalink)  
Antiguo 30/05/2007, 11:57
 
Fecha de Ingreso: enero-2007
Mensajes: 158
Antigüedad: 17 años, 3 meses
Puntos: 0
Eliminar fila en BD desde PHP

Estoy tratando de hacer una funcion eliminar en una tabla, por cada fila que se extraiga de la BD que se muestre un boton eliminar al lado de la forma:

contador [ELIMINAR]
veterinario[ELIMINAR]
secretaria[ELIMINAR]
.
.

La pagina no me muestra ningun error la pagina se muestra bien y me muestra la tabla con los datos extraidos de la BD junto con el boton eliminar al lado...pero si presiono eliminar muestra en el navegador que va a la funcion pero no elimina nada


Código PHP:
<?php include ("conectar.php");?> 


<?php
 
if ($_GET['Accion']=="eliminando" ) {
 
conectar();
 
pg_query("DELETE FROM titulo WHERE id='$b'");
}

?>

<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>


<body>
<form name="nuevo" method="post" action="">
  <p>INGRESO NUEVA PROFESION </p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <table width="78%" height="40" border="0">
    <tr>
      <td width="16%" height="36">Titulo profesional</td>
      <td width="84%">
<input name="titulo" type="text" id="titulo" size="70" maxlength="70" value="<? echo ($casi)?>"></td>
    </tr>
  </table>
  <p> 
      <input type="button" name="Guardar" value="Guardar" onClick="Guardar_onClick(Guardar)" >
  </p>
  <p>&nbsp;</p>
 

<?php 
  conectar
();
$query="SELECT id, descripcion FROM titulo  ORDER BY descripcion"
 
$result=pg_query($query); 
 
$row pg_fetch_array ($result0);
 
?> 
 <table border="1" bordercolor=cc9900>   
 <tr>  
     <td ><em><strong>Id</strong></em></td>  
      <td ><em><strong>Empresa</strong></em></td>  
    </tr> 
    <?php    while($rowpg_fetch_array($result)) 
    {   
?>
      <tr> 
        <td ><?php echo $row["id"?></td>  
        <td ><?php echo $row["descripcion"?></td>
         <td ><input type="button" name="Eliminar" value='ELIMINAR <?php $b=$row["id"?>' onClick="Eliminar_onClick(Eliminar)"></td>   
    </tr>     
<?php 
?>
 </table> 

</form>
</body>
</html>



<script language="javascript">
{

function Eliminar_onClick() {      
         document.nuevo.action="profesion.php?Accion=eliminando"
             document.nuevo.submit()        
        }                        
}
</script>
  #2 (permalink)  
Antiguo 30/05/2007, 12:15
Avatar de Carsan  
Fecha de Ingreso: abril-2007
Ubicación: Mexico
Mensajes: 109
Antigüedad: 17 años
Puntos: 0
Re: Eliminar fila en BD desde PHP

Yo estoy casi con el mismo problema creo. en el query podrias probar con esto y copiar el error que te da???

Código PHP:
$sql="DELETE FROM titulo WHERE id='$b'";
pg_query($sql); or die('Error, query failed: ' mysql_error() . ' Query: ' $sql); 
  #3 (permalink)  
Antiguo 30/05/2007, 12:19
Avatar de Raulmmmm  
Fecha de Ingreso: marzo-2007
Ubicación: En otro lugar que tú
Mensajes: 1.549
Antigüedad: 17 años, 1 mes
Puntos: 36
Re: Eliminar fila en BD desde PHP

Pon el código php de arriba en otro archivo:
eliminar.php
<?php
include ("conectar.php");
$b = $_GET['id'];
conectar();
pg_query("DELETE FROM titulo WHERE id='$b'");
?>
Y luego el enlace para eliminar:
<a href="eliminar.php?id=<?php echo $row["id"] ?>">Eliminar</a>
Mira a ver ahora. Saludos
  #4 (permalink)  
Antiguo 30/05/2007, 13:02
 
Fecha de Ingreso: enero-2007
Mensajes: 158
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: Eliminar fila en BD desde PHP

Tambien he probado con href colocando el delete en la misma pagina y tambien en otra distinta, pero tampoco me funciona.. en el navegador me muestra:
http://localhost/curr/eliminar.php?id=2

Por lo que veo si me envia el id de la fila pero no elimina nada
  #5 (permalink)  
Antiguo 30/05/2007, 16:59
Avatar de b3nj4  
Fecha de Ingreso: febrero-2002
Mensajes: 168
Antigüedad: 22 años, 2 meses
Puntos: 3
Re: Eliminar fila en BD desde PHP

Yo creo que te has complicado bastante para crear los enlaces para eliminar los IDs. Seria más fácil hacer un enlace simple de texto que un boton.

Tu problema con el boton creo que viene porque no tienes creado ningún campo que pase el ID a la nueva página. Tendrías que tener un código como:
Cita:
<input type=hidden name=id value=ID_A_ELIMINAR>
Además, por cada iteración crear un formulario diferente:
Cita:
<tr>
<td ><?php echo $row["id"] ?></td>
<td ><?php echo $row["descripcion"] ?></td>
<td >
<form>
<input type="button" name="Eliminar" value='ELIMINAR <?php $b=$row["id"]
<input type=hidden name=id value=ID_A_ELIMINAR>
</form>
?>' onClick="Eliminar_onClick(Eliminar)"></td>
</tr>
creo que sería algo así
__________________
¿Quieres programas de diseño web en PortalProgramas?
  #6 (permalink)  
Antiguo 31/05/2007, 04:13
Avatar de laaccaal  
Fecha de Ingreso: julio-2003
Ubicación: Murcia
Mensajes: 147
Antigüedad: 20 años, 9 meses
Puntos: 1
Re: Eliminar fila en BD desde PHP

Fijate que en tu codigo PHP estas buscando variables de tipo GET pero sin embargo tu formulario esta enviando variables tipo POST
__________________
Album Fotos
Blog MisApuntes
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 20:37.