Foros del Web » Programando para Internet » PHP »

Borrado de registros desde PHP

Estas en el tema de Borrado de registros desde PHP en el foro de PHP en Foros del Web. Estoy tratando de borrar los registros de MySQL, indicado el numero del ID. El problema a pesar de ejecutar la instrucción, no me borra el ...
  #1 (permalink)  
Antiguo 08/10/2007, 13:14
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Borrado de registros desde PHP

Estoy tratando de borrar los registros de MySQL, indicado el numero del ID.

El problema a pesar de ejecutar la instrucción, no me borra el registro. ¿Que puede estár pasando?

Les dejo el codigo para que se diviertan con el mientras me ayudan a solucionar el problema.
Código PHP:
<?
session_start
();

if (
$_SESSION["autentificado"] != "SI")
    
header("Location: index.php");

if( isset( 
$_POST['Si'] ) ) 

mysql_connect("mysql15.ixwebhosting.com","dicosa_juan","s0ld13r2"); 
mysql_select_db("dicosa_equiphone"); 

$sql "DELETE FROM `reportevisitas` WHERE `id` = ".$_GET["reporte"]." LIMIT 1";

mysql_query($sql);

header("Location: panelvendedores.php?eliminar=ok");

if( isset( 
$_POST['No'] ) )
{
header("Location: panelvendedores.php");
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Equiphone :: Eliminaci&oacute;n de registro</title>
<style type="text/css">
<!--
body,td,th {
    color: #000000;
    font-family: Geneva, Arial, Helvetica, sans-serif;
}
body {
    background-color: #FFFFFF;
}
.Estilo7 {font-size: 12px}
a:link {
    color: #000000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #000000;
}
.Estilo9 {font-size: 12px; color: #FFFFFF; }
-->
</style></head>

<body>
<table width="720" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td colspan="3"><img src="images/EquiPhone.jpg" width="303" height="108" /></td>
  </tr>
  <tr>
    <td colspan="3"><p>&nbsp;</p>
    <p align="center">&iquest;Est&aacute; seguro de eliminar el reporte seleccionado?</p>
    <form id="form1" name="form1" method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
      
        <div align="center">
          <input type="submit" name="Si" id="Si" value="S&iacute;" />
          <input type="submit" name="No" id="No" value="No" />
        </div>
    </form>
    <p>&nbsp;</p></td>
  </tr>
  <tr>
    <td width="200" height="75" bgcolor="#FF0000"><table border="0" align="center" cellpadding="10" cellspacing="0">
      <tr>
        <td><p class="Estilo9">&copy; 2007 Equiphone. <br />
        Todos los derechos reservados. </p>          </td>
      </tr>
    </table></td>
    <td width="520" height="75" colspan="2" bgcolor="#CCCCCC">&nbsp;</td>
  </tr>
</table>
</body>
</html>
Saludos
  #2 (permalink)  
Antiguo 08/10/2007, 13:42
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 16 años, 11 meses
Puntos: 6
Re: Borrado de registros desde PHP

Hola puedes agregar esta linea despues de tu consulta donde borras para ver ke error tienes:

$res = mysql_query($sql) or die('Consulta fallida: ' . mysql_error());

en lugar de:

mysql_query($sql);

Salu2
__________________
"Eres grande por que caminas entre gigantes"
  #3 (permalink)  
Antiguo 08/10/2007, 14:29
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Borrado de registros desde PHP

me dice que es una falla en la sintaxis, pero si yo concatené las variables para hacerlas una cadena. y cuando pienso que lo hago bien, no me sale bien.

Que coño puede estar pasando? que puede ser?
  #4 (permalink)  
Antiguo 08/10/2007, 14:33
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 16 años, 11 meses
Puntos: 6
Re: Borrado de registros desde PHP

$sql = "DELETE FROM reportevisitas WHERE id = '".$_GET["reporte"]."' LIMIT 1";

pruebalo asi.
__________________
"Eres grande por que caminas entre gigantes"
  #5 (permalink)  
Antiguo 08/10/2007, 14:49
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Borrado de registros desde PHP

no me borra el registro, ¿no sabes que el id es un entero? y si le ponen comillas van a asumir que es una cadena. ademas el username tiene privilegios para borrar.


quiero una solución ya!!!
  #6 (permalink)  
Antiguo 08/10/2007, 14:55
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 16 años, 11 meses
Puntos: 6
Re: Borrado de registros desde PHP

$var1=$_GET["reporte"];
$sql = "DELETE FROM reportevisitas WHERE id = $var1 LIMIT 1";

Puedes ponerlo asi, y perdon pero soy muy inexperto solamente kiero ayudarte, pero pues ofendes con tus comentarios y creo ke aki no se trata de eso sino de ayudarnos, por supuesto ke se todo lo ke me dices amigo y con gusto te intentaré ayudar en lo ke pueda.

Cita:
¿no sabes que el id es un entero? y si le ponen comillas van a asumir que es una cadena.
salu2
__________________
"Eres grande por que caminas entre gigantes"
  #7 (permalink)  
Antiguo 08/10/2007, 15:01
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Borrado de registros desde PHP

Perdona, es que estoy desesperado porque tengo que mostrar esto a una empresa. y no me gustaría que no funcionara nada

Ya lo he intentado... sin resultar nada
  #8 (permalink)  
Antiguo 08/10/2007, 15:07
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 16 años, 11 meses
Puntos: 6
Re: Borrado de registros desde PHP

No te preocupes, haber dime ke te muestra de error?
__________________
"Eres grande por que caminas entre gigantes"
  #9 (permalink)  
Antiguo 08/10/2007, 15:09
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 16 años, 11 meses
Puntos: 6
Re: Borrado de registros desde PHP

ponlo asi y me dices ke te imprime en $var1

$var1=$_GET["reporte"];
echo $var1;

mysql_query ("DELETE FROM reportevisitas WHERE id = $var1 LIMIT 1 ");
__________________
"Eres grande por que caminas entre gigantes"
  #10 (permalink)  
Antiguo 08/10/2007, 15:11
Avatar de xempro  
Fecha de Ingreso: marzo-2007
Ubicación: Chile
Mensajes: 222
Antigüedad: 17 años, 1 mes
Puntos: 6
Re: Borrado de registros desde PHP

Error encontrado...


estas enviando los datos por POST y tienes puesto $_GET["reporte"], no debiese ser $_POST["reporte"]
  #11 (permalink)  
Antiguo 08/10/2007, 15:15
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Borrado de registros desde PHP

Este es el error en cuestión:

"Consulta fallida: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 1' at line 1"

Cosa que me parece imposible, porque esta bien escrito, incluso la consulta viene de phpMyAdmin. Es inaudito.

Por cierto el metodo get lo estoy usando porque estoy pasando variables desde una url.

Por ejemplo "confirmar.php?reporte=1"
  #12 (permalink)  
Antiguo 08/10/2007, 15:16
Avatar de xempro  
Fecha de Ingreso: marzo-2007
Ubicación: Chile
Mensajes: 222
Antigüedad: 17 años, 1 mes
Puntos: 6
Re: Borrado de registros desde PHP

Se me pasaba un detalle mas importante, tienes que emviar el id del reporte como campo oculto o sino no sabra a que reporte te refieres....


EJEMPLO

Código HTML:
<input type="hidden" name="reporte" value="<? echo $_GET['reporte'];?>" /> 

lo puse como get, porque me da la impresion que el numero de reporte lo pasar por la URL a esta pagina.
  #13 (permalink)  
Antiguo 08/10/2007, 15:17
Avatar de xempro  
Fecha de Ingreso: marzo-2007
Ubicación: Chile
Mensajes: 222
Antigüedad: 17 años, 1 mes
Puntos: 6
Re: Borrado de registros desde PHP

Si, te lanza error en el LIMIT 1, pero el error esta antes a eso, justamente en el $_GET['reporte'], porque encuentra un valor NULL, si impirmes el sql te aparece esto...


Código HTML:
DELETE FROM `reportevisitas` WHERE `id` = LIMIT 1
  #14 (permalink)  
Antiguo 08/10/2007, 15:29
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Borrado de registros desde PHP

Cita:
Iniciado por xempro Ver Mensaje
Se me pasaba un detalle mas importante, tienes que emviar el id del reporte como campo oculto o sino no sabra a que reporte te refieres....


EJEMPLO

Código HTML:
<input type="hidden" name="reporte" value="<? echo $_GET['reporte'];?>" /> 
lo puse como get, porque me da la impresion que el numero de reporte lo pasar por la URL a esta pagina.

Eso era lo que me faltaba. Ya lo probé y corre a las mil maravillas.

Quisiera agradecerles a los que me ayudaron y trataron de hacerlo. Realizaron un gran trabajo. ahora estoy más tranquilo.

Muchas Gracias

The Neurochild
  #15 (permalink)  
Antiguo 08/10/2007, 15:34
Avatar de xempro  
Fecha de Ingreso: marzo-2007
Ubicación: Chile
Mensajes: 222
Antigüedad: 17 años, 1 mes
Puntos: 6
Re: Borrado de registros desde PHP

Cita:
Iniciado por The Neurochild Ver Mensaje
Este es el error en cuestión:

"Consulta fallida: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 1' at line 1"

Cosa que me parece imposible, porque esta bien escrito, incluso la consulta viene de phpMyAdmin. Es inaudito.

Por cierto el metodo get lo estoy usando porque estoy pasando variables desde una url.

Por ejemplo "confirmar.php?reporte=1"

Insisto, envia dentro del mismo formulario un campo oculto con la variable reporte, con eso se deberia solucionar....


Si no crees, hace el intento imprimiento dentro de tu POST['si'] la variable $_GET['reporte'] y te daras cuenta que no tiene valro alguno.

en cambio, si agregas el campo oculto que te meciono, y luego rescatas con un echo $_POST['reporte'] debiese tener el numero de reporte y con ese dato puedes arreglar tu SENTENCIA DELETE.

Última edición por xempro; 08/10/2007 a las 15:36 Razón: me demore en contestar....
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 00:16.