Foros del Web » Programando para Internet » PHP »

No puedo borrar registros de mi MySQL por mi php

Estas en el tema de No puedo borrar registros de mi MySQL por mi php en el foro de PHP en Foros del Web. Hola les cuento tengo un php armado y quiero borrar registros de mi base de datos el tema es que no me los borra <HTML> ...
  #1 (permalink)  
Antiguo 19/06/2011, 19:35
Avatar de diegodg05  
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 12 años, 10 meses
Puntos: 0
No puedo borrar registros de mi MySQL por mi php

Hola les cuento tengo un php armado y quiero borrar registros de mi base de datos el tema es que no me los borra

<HTML>
<HEAD>
<TITLE>Borrar</TITLE>
</HEAD>
<BODY>
<div align="center">
<h1>Borrar un registro</h1>
<br>

<?
//Conexion con la base
mysql_connect("localhost","root","*******");

//selección de la base de datos con la que vamos a trabajar
mysql_select_db("usuario");

echo '<FORM METHOD="POST" ACTION="borrar4.php">Nombre<br>';

//Creamos la sentencia SQL y la ejecutamos
$sSQL="SELECT nombre,descripcion,codigo,cantidad FROM Productos ORDER BY nombre";

//"Select nombre From Productos Order By nombre";
$result=mysql_query($sSQL);

echo '<select name="nombre">';

//Mostramos los registros en forma de menú desplegable
while ($row=mysql_fetch_array($result))
{echo '<option>'.$row["nombre"];}
mysql_free_result($result)
?>

</select>
<br>
<INPUT TYPE="SUBMIT" value="Borrar">
</FORM>

</div>

</BODY>
</HTML>

y este es el otro el que aplica

<HTML>
<HEAD>
<TITLE>Borrar2</TITLE>
</HEAD>
<BODY>
<?
//Conexion con la base
mysql_connect("localhost","root","********");

//selección de la base de datos con la que vamos a trabajar
mysql_select_db("usuario");

//Creamos la sentencia SQL y la ejecutamos
$sSQL=("Delete From Productos Where nombre='$nombre',descripcion='$descripcion',codigo ='$codigo',cantidad='$cantidad'");
mysql_query($sSQL);
//mysql_db_query("Productos",$sSQL);
?>

<h1><div align="center">Registro Borrado</div></h1>
<div align="center"><a href="lectura1.php">Visualizar el contenido de la base</a></div>

</BODY>
</HTML>

Pero el tema es que no me borra los registros de la tabla

si me pueden ayudar se lo agradezco

gracias
  #2 (permalink)  
Antiguo 19/06/2011, 19:45
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 9 meses
Puntos: 55
Respuesta: No puedo borrar registros de mi MySQL por mi php

no lei el codigo solo por encimita pero fijate esto

$result=mysql_query($sSQL);

colocalo asi

$result=mysql_query($sSQL) or die (mysql_error());

a ver si te marca algun error
__________________
<?php echo "No te metas a lo hondo del Mar si no sabes nadar, primero aprende a nadar" ?>
...Error en linea: 1 o.O
  #3 (permalink)  
Antiguo 19/06/2011, 20:37
Avatar de diegodg05  
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: No puedo borrar registros de mi MySQL por mi php

me tira esto pero en el borrar2.php

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 'descripcion='',codigo ='',cantidad=''' at line 1

le saque la sentencia 'descripcion='',codigo ='',cantidad='''

y no me tiro mas errores pero el registro no me lo borra
  #4 (permalink)  
Antiguo 19/06/2011, 21:02
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: No puedo borrar registros de mi MySQL por mi php

Y de donde se supone que tomas las variables para armar la consulta?, tendrias que asignar el valor para cada una de ellas:

$variable = $_POST['variable'];

Te invito a leer sobre variables externas.
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 19/06/2011, 21:10
Avatar de diegodg05  
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: No puedo borrar registros de mi MySQL por mi php

si pero nome doy cuenta donde colocarlas ya que no tengo mucha experiencia
  #6 (permalink)  
Antiguo 19/06/2011, 21:23
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: No puedo borrar registros de mi MySQL por mi php

Te falta el AND entre los valores por los que s :/
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #7 (permalink)  
Antiguo 19/06/2011, 21:34
Avatar de diegodg05  
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: No puedo borrar registros de mi MySQL por mi php

mmm... no entiendo me podras dar un ej?
  #8 (permalink)  
Antiguo 19/06/2011, 21:36
Avatar de diegodg05  
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: No puedo borrar registros de mi MySQL por mi php

yo del borrar2 cambie

$sSQL=("Delete From Productos Where `{$_POST['nombre']}`");

y ahora me tira

Unknown column 'cds' in 'where clause'
  #9 (permalink)  
Antiguo 19/06/2011, 21:44
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: No puedo borrar registros de mi MySQL por mi php

Eso es porque no has especificado la columna, por ende, el valor que le pasas por POST lo toma como nombre de la columna.

Deberia ser asi :

$sSQL=("Delete From Productos Where columna= '{$_POST['nombre']}'");
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #10 (permalink)  
Antiguo 19/06/2011, 21:44
 
Fecha de Ingreso: enero-2011
Mensajes: 39
Antigüedad: 13 años, 2 meses
Puntos: 1
Respuesta: No puedo borrar registros de mi MySQL por mi php

Fijate asi:

Borrar.php
Código PHP:
Ver original
  1. <HTML>
  2. <HEAD>
  3. <TITLE>Borrar</TITLE>
  4. </HEAD>
  5. <BODY>
  6. <div align="center">
  7. <h1>Borrar un registro</h1>
  8. <br>
  9.  
  10. <?
  11. //Conexion con la base
  12. mysql_connect("localhost","root","*******");
  13.  
  14. //selección de la base de datos con la que vamos a trabajar
  15. mysql_select_db("usuario");
  16.  
  17. echo '<FORM METHOD="POST" ACTION="borrar4.php">Nombre<br>';
  18.  
  19. //Creamos la sentencia SQL y la ejecutamos
  20. $sSQL="SELECT nombre,descripcion,codigo,cantidad FROM Productos ORDER BY nombre";
  21.  
  22. //"Select nombre From Productos Order By nombre";
  23. $result=mysql_query($sSQL);
  24.  
  25. echo '<select name="nombre">';
  26.  
  27. //Mostramos los registros en forma de menú desplegable
  28. while ($row=mysql_fetch_array($result))
  29. {echo '<option>'.$row["nombre"];}
  30. ?>
  31.  
  32. </select>
  33. <br>
  34. <INPUT TYPE="SUBMIT" value="Borrar">
  35. </FORM>
  36.  
  37. </div>
  38.  
  39. </BODY>
  40. </HTML>

Código PHP:
Ver original
  1. <HTML>
  2. <HEAD>
  3. <TITLE>Borrar2</TITLE>
  4. </HEAD>
  5. <BODY>
  6. <?
  7. //Conexion con la base
  8. mysql_connect("localhost","root","********");
  9.  
  10. //selección de la base de datos con la que vamos a trabajar
  11. mysql_select_db("usuario");
  12.  
  13. //Creamos la sentencia SQL y la ejecutamos
  14. $SQL=("Delete From Productos Where nombre='$nombre',descripcion='$descripcion',codigo ='$codigo',cantidad='$cantidad'");
  15. //mysql_db_query("Productos",$sSQL);
  16. ?>
  17.  
  18. <h1><div align="center">Registro Borrado</div></h1>
  19. <div align="center"><a href="lectura1.php">Visualizar el contenido de la base</a></div>
  20.  
  21. </BODY>
  22. </HTML>
  #11 (permalink)  
Antiguo 19/06/2011, 21:48
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: No puedo borrar registros de mi MySQL por mi php

Bueno, a lo que iba es que la query debe ser así :

Código MySQL:
Ver original
  1. $SQL=("Delete From Productos Where nombre='$nombre' AND descripcion='$descripcion' AND codigo ='$codigoc' AND antidad='$cantidad'");
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #12 (permalink)  
Antiguo 19/06/2011, 22:02
Avatar de diegodg05  
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: No puedo borrar registros de mi MySQL por mi php

no me tira errores por lo menos pero tampoco me borra registros
Código PHP:
Ver original
  1. <HTML>
  2. <HEAD>
  3. <TITLE>Borrar2</TITLE>
  4. </HEAD>
  5. <BODY>
  6. <?
  7. //Conexion con la base
  8. mysql_connect("localhost","root","********");
  9.  
  10. //selección de la base de datos con la que vamos a trabajar
  11. mysql_select_db("usuario");
  12.  
  13. //Creamos la sentencia SQL y la ejecutamos
  14. //$sSQL=("Delete From Productos Where nombre='$nombre',descripcion='$descripcion',codigo ='$codigo',cantidad='$cantidad'");
  15.  $SQL=("Delete From Productos Where nombre='$nombre' AND descripcion='$descripcion' AND codigo ='$codigo' AND cantidad='$cantidad'");
  16. //mysql_db_query("Productos",$sSQL);
  17. ?>
  18.  
  19. <h1><div align="center">Registro Borrado</div></h1>
  20. <div align="center"><a href="lectura1.php">Visualizar el contenido de la base</a></div>
  21.  
  22. </BODY>
  23. </HTML>
  #13 (permalink)  
Antiguo 19/06/2011, 22:05
Avatar de diegodg05  
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: No puedo borrar registros de mi MySQL por mi php

y la ejecucion del mysql me tira

Fallo al ejecturar SQL : SQL $SQL=("Delete From Productos Where nombre='$nombre' AND descripcion='$descripcion' AND codigo ='$codigo' AND cantidad='$cantidad'"); falló: 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 '$SQL=("Delete From Productos Where nombre='$nombre' AND descripcion='$descripcio' at line 1
  #14 (permalink)  
Antiguo 19/06/2011, 22:11
Avatar de diegodg05  
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: No puedo borrar registros de mi MySQL por mi php

muchachos muchas gracias lo solucione asi
Código PHP:
Ver original
  1. $sSQL=("Delete From Productos Where columna= '{$_POST['nombre']}'");

ahora me borro el registro

Etiquetas: borrar, datosdb, mysql, registros
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 15:37.