Foros del Web » Programando para Internet » PHP »

Porque no elimina?, pero si inserta

Estas en el tema de Porque no elimina?, pero si inserta en el foro de PHP en Foros del Web. Buenas tardes amigos, no entiendo porque si me inserta en una tabla, pero cuando quiero eliminarla de otra no lo hace, espero me ayuden. include("conexion.php"); ...
  #1 (permalink)  
Antiguo 18/10/2011, 13:28
 
Fecha de Ingreso: julio-2011
Mensajes: 161
Antigüedad: 12 años, 9 meses
Puntos: 3
Pregunta Porque no elimina?, pero si inserta

Buenas tardes amigos, no entiendo porque si me inserta en una tabla, pero cuando quiero eliminarla de otra no lo hace, espero me ayuden.

include("conexion.php"); //conexion
$noc= $_POST['element_1']; //Orden Compra
$direccion= $_POST['element_2']; //Direccion
$telefono= $_POST['element_3']; //Telefono
$mat_sol= $_POST['element_4']; //Mat. Solicit. Log. Almc.
$desc_ser= $_POST['element_5']; //Desc. Servicio
//$info_adj= $_POST['element_6']; //Info adjunta
$lic= $_POST['element_17']; //Licitacion
$codigo= $_POST['codigo']; //Codigo
$op_fecha= $_POST['ingreso'];


$insert=mysql_query("INSERT INTO op_obtener_datos(n_oc,op_direccion,op_telefono,op_ mat_log_almacen,op_desc_servicio,op_licitacion,op_ codigo,op_fecha) VALUES
('$noc','$direccion','$telefono','$mat_sol','$desc _ser','$lic','$codigo','$op_fecha')",
$conexion) or die ("Problemas en el select".mysql_error());
mysql_close($conexion);


$result=mysql_query("DELETE FROM op_frm_solicitar WHERE op_codigo='$codigo'",$conexion);
  #2 (permalink)  
Antiguo 18/10/2011, 13:32
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Porque no elimina?, pero si inserta

¿Te muestra algún error? Imprime también el valor de mysql_error() tal como lo haces en el insert.

Saludos.
  #3 (permalink)  
Antiguo 18/10/2011, 13:35
 
Fecha de Ingreso: julio-2011
Mensajes: 161
Antigüedad: 12 años, 9 meses
Puntos: 3
Respuesta: Porque no elimina?, pero si inserta

Me sale esto Gatorv
Warning: mysql_query(): 3 is not a valid MySQL-Link resource in E:\Software colaborativo\opengoo_1.3.1\opengoo\form\operacione s\Formularios\FrmGuardarCompletarSolicitud.php on line 21
Problemas en el select
  #4 (permalink)  
Antiguo 18/10/2011, 13:38
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 10 meses
Puntos: 56
Respuesta: Porque no elimina?, pero si inserta

Yo veo aqui un espacio en blanco ('$desc _ser'):

Código PHP:
Ver original
  1. $insert=mysql_query("INSERT INTO op_obtener_datos(n_oc,op_direccion,op_telefono,op_ mat_log_almacen,op_desc_servicio,op_licitacion,op_ codigo,op_fecha) VALUES
  2. ('$noc','$direccion','$telefono','$mat_sol','$desc _ser','$lic','$codigo','$op_fecha')",
  3. $conexion) or die ("Problemas en el select".mysql_error());
  4. mysql_close($conexion);
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #5 (permalink)  
Antiguo 18/10/2011, 13:41
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Porque no elimina?, pero si inserta

Pues creo es obvio, haces un mysql_close() después del insert y luego quieres hacer el delete, eso hace que ya no exista la conexión.
  #6 (permalink)  
Antiguo 18/10/2011, 13:42
 
Fecha de Ingreso: julio-2011
Mensajes: 161
Antigüedad: 12 años, 9 meses
Puntos: 3
Respuesta: Porque no elimina?, pero si inserta

Gracias por el aporte, pero no hay ningun espacio en blanco amigo.
  #7 (permalink)  
Antiguo 18/10/2011, 13:42
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Porque no elimina?, pero si inserta

yo creo que el problema esta aqui:

$conexion) or die ("Problemas en el select".mysql_error());
mysql_close($conexion);

$result=mysql_query("DELETE FROM op_frm_solicitar WHERE op_codigo='$codigo'",$conexion);

cierras la conexion y luego intentas utilizarla =)

-----------------edit---------------
se me adelanto gatorV XD
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #8 (permalink)  
Antiguo 18/10/2011, 13:44
 
Fecha de Ingreso: julio-2011
Mensajes: 161
Antigüedad: 12 años, 9 meses
Puntos: 3
Respuesta: Porque no elimina?, pero si inserta

Muchisima gracias, como podria hacer para que no me generè esto :


Notice: Undefined index: element_3 in E:\Software colaborativo\opengoo_1.3.1\opengoo\form\operacione s\Formularios\FrmGuardarCompletarSolicitud.php on line 6

Notice: Undefined index: element_4 in E:\Software colaborativo\opengoo_1.3.1\opengoo\form\operacione s\Formularios\FrmGuardarCompletarSolicitud.php on line 7

Notice: Undefined index: element_5 in E:\Software colaborativo\opengoo_1.3.1\opengoo\form\operacione s\Formularios\FrmGuardarCompletarSolicitud.php on line 8

Notice: Undefined index: element_17 in E:\Software colaborativo\opengoo_1.3.1\opengoo\form\operacione s\Formularios\FrmGuardarCompletarSolicitud.php on line 10

es decir comprobar que las variables tengan valors. Gracias.
  #9 (permalink)  
Antiguo 18/10/2011, 13:46
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Porque no elimina?, pero si inserta

usa isset, te indica si la variable fue declarada:

Código PHP:
Ver original
  1. if(isset($_POST['element_1'])) $noc= $_POST['element_1'];
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #10 (permalink)  
Antiguo 18/10/2011, 13:48
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Porque no elimina?, pero si inserta

Usa isset() para comparar:

Código PHP:
Ver original
  1. $valor = isset($_POST['elemento_X']) ? $_POST['elemento_X'] : '';

Saludos.

Etiquetas: inserta, mysql, 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 21:18.