Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] No elimina registro

Estas en el tema de No elimina registro en el foro de PHP en Foros del Web. Buenas tardes, Me encuentro con un problema que aunque no hago mas que darle vueltas no consigo solucionar. He diseñado una tabla que envía por ...
  #1 (permalink)  
Antiguo 01/07/2014, 08:23
 
Fecha de Ingreso: diciembre-2010
Mensajes: 20
Antigüedad: 13 años, 3 meses
Puntos: 0
No elimina registro

Buenas tardes,

Me encuentro con un problema que aunque no hago mas que darle vueltas no consigo solucionar. He diseñado una tabla que envía por get una función para eliminar un registro. No obstante, no consigo que lo haga y no veo el error. Os dejo los códigos.

Origen:
Código PHP:
<h3>Eliminar consejo</h3>
<form name="eliminar" method="post" action="admin_consejos.php">
<?php
$sql
="SELECT idconsejo, nombreconsejo FROM consejos";
$resultado=mysql_query($sql);
?>
<select name="eliminarconsejo" id="sconsejos" accesskey="s" tabindex="7"> 
<?php while($fila=mysql_fetch_array($resultado)){;?>
<option value="<?php echo $fila['idconsejo']?>">
<?php echo $fila["nombreconsejo"]?></option><?php };?></select>
<input class="boton" type="submit" name="ver" id="ver" value="Eliminar" accesskey="v" tabindex="8">
</form>
<?php if(isset($_POST["eliminarconsejo"])){
$idcon=$_POST["eliminarconsejo"];
$sql="SELECT * FROM consejos WHERE idconsejo=$idcon";
$resultado=mysql_query($sql);
$fila=mysql_fetch_array($resultado);?>
<p class="advertencia">Estas a punto de eliminar este consejo. ¿Estás seguro?</p>
<table cellpadding="4" cellspacing="1">
<thead>
    <tr>
    <th>Consejo Regulador</th>
    <th>Web</th>
    <th>Email</th>
    <th>Direccion</th>
    <th>Telefono</th>
    <th>¿Eliminar?</th>
    </tr>
</thead>

<tbody>
    <tr>
    <td><?php echo $fila["nombreconsejo"];?></td>
    <td><?php echo $fila["web"];?></td>
    <td><?php echo $fila["email"];?></td>
     <td><?php echo $fila["direccion"];?></td>
    <td><?php echo $fila["tfno"];?></td>
    <td><a href="actualizarconsejo.php?cid=<?php echo $fila['idconsejo'];?>"><figure><img src="imagenes/generales/eliminar.png" class="escalar3"></a></td>
    </tr>
</tbody>
</table>
<?php };?>
<?php
if(isset($_GET["eliminar"])){ 
echo 
"<p class='nuevo'>Has eliminado un consejo</p>";
};
?>
El enlace envía por $_GET al archivo actualizarconsejo.php que lo recibe de esta manera:
Código PHP:
if($_GET["cid"]){
$cid=$_GET["cid"];
$sql="DELETE * FROM consejos WHERE idconsejo=$cid";
mysql_query($sql);
header("Location:admin_consejos.php?eliminar");
}
?> 
No sé si veis algo que yo no...

Gracias por la atención.
  #2 (permalink)  
Antiguo 01/07/2014, 08:30
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: No elimina registro

¿Y te has fijado si está devolviendo algún error?
Al menos eso deberías...
Algo como:
Código PHP:
Ver original
  1. mysql_query($sql) or die("Error al intentar borrar: ".mysql_error());

Por cierto, recuerda leer el manual de referencia de MySQL:

Incorrecto:
Código MySQL:
Ver original
  1. DELETE * FROM consejos
  2. WHERE idconsejo=$cid

Correcto:
Código MySQL:
Ver original
  1. DELETE FROM consejos
  2. WHERE idconsejo=$cid

Correcto:
Código MySQL:
Ver original
  1. DELETE consejos
  2. WHERE idconsejo=$cid

http://dev.mysql.com/doc/refman/4.1/en/delete.html
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 01/07/2014, 08:33
 
Fecha de Ingreso: diciembre-2010
Mensajes: 20
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: No elimina registro

Gracias por la rápida respuesta.

He hecho lo que me has dicho y me devuelve lo siguiente:

"Error al intentar borrar: Unknown table 'idconsejo' in MULTI DELETE"
  #4 (permalink)  
Antiguo 01/07/2014, 08:37
 
Fecha de Ingreso: diciembre-2010
Mensajes: 20
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: No elimina registro

Gracias. efectivamente el asterísco era el que no me permitía borrar. siento las molestias causadas.

Etiquetas: mysql, registro, select, sql, tabla
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 01:01.