PHP - INSERT noguarda los datos

 
Vista:
Imágen de perfil de Claudio
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

INSERT noguarda los datos

Publicado por Claudio (70 intervenciones) el 21/02/2007 22:11:15
Hola, ¿Que tal?

Tengo este código para insertar los datos en una tabla mysql, no da ningún error, pero tampoco inserta los datos.

Tengo otro código de otro INSERT, que es igual a este y ese funciona, bueno es igual en sintaxis, la única diferencia que podria mencionar es que los campos id_proveedores, id_documentos y id_glosa, en el formulario son SELECT OPTION obtenidos desde otras tablas, osea rellenados con datos de otras tablas y seleccionado una de las opciones. ¡Puede ser esa la razón por la cual no efectua los insert?.

$sql = mysql_query("INSERT INTO inv_compras (id_producto,id_proveedor,fecha_compra,id_documento,nro_documento,cantidad,costo,id_glosa) values ('{$_POST['id_producto']}','{$_POST['id_proveedor']}','{$_POST['fecha_compra']}','{$_POST['id_documento']}','{$_POST['nro_documento']}','{$_POST['cantidad']}','{$_POST['costo']}','{$_POST['id_glosa']}')");

Cualquier ayuda se agradece.

Claudio González Soto
Valparaíso - Chile
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

RE:INSERT noguarda los datos

Publicado por Yamil Bracho (888 intervenciones) el 21/02/2007 22:31:37
Hazle un print a la instruccion $sql, asi

$sql = ....
print $sql

para ver que tiene $sql y asi si esta bien formada...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Claudio
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

RE:INSERT noguarda los datos

Publicado por Claudio (70 intervenciones) el 21/02/2007 22:43:37
Gracias Yamil por la respuesta, pero no hace nada, no muestra lo que tiene sql, ya lo habia probado con echo $sql; y nada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

RE:INSERT noguarda los datos

Publicado por Yamil Bracho (888 intervenciones) el 21/02/2007 22:53:58
Eso quiere decir que tienes un error en esa instruccion. Vela revisando por partes para ver donde esta el error o imprime primero lo que te viene por $_POST

echo $_POST['id_producto'];
echo {$_POST['id_proveedor']}
....

Y asi sucesivamente. SI todos los datos te llegan bien
velos moviendo uno a uno a tu sentencia SQL
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Claudio
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

RE:INSERT noguarda los datos

Publicado por Claudio (70 intervenciones) el 21/02/2007 23:35:38
Ya, gracias a tu respuesta, he aprendido algo más, nunca me habia imaginado como checar, las variables que envia el formulario. Gracias por ello.

Ahora no me envia las variables de los id_proveedor, id_documento, ni id_glosa, que son datos que estan en otras tablas y son rellenados en un option.

Ahora donde estaría ese error?

escribo el código de uno de esos, haber si me ayudas, por fa

<label for="id_proveedor">ID Proveedor : </label><select name="id_proveedor" />
<? while ($row = mysql_fetch_array($result)){ ?>
<option value="-" selected><? echo "$row[nombre]"; ?> </option><? } ?></select><br />

Esto funciona bien en el formulario, osea rellena el select option con los datos que estan en las correspondientes tablas, pero no pasa las variables al archivo de proceso
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

RE:INSERT noguarda los datos

Publicado por Yamil Bracho (888 intervenciones) el 21/02/2007 23:40:45
Estas usando POST en el action de tu formulario ?...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Claudio
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

RE:INSERT noguarda los datos

Publicado por Claudio (70 intervenciones) el 21/02/2007 23:43:40
si correcto, de esta forma

<form name="alerta" action='procesa_ingreso_compras.php' method="post">
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Hernan sanchez

RE:INSERT noguarda los datos

Publicado por Hernan sanchez (31 intervenciones) el 22/02/2007 00:45:08
hola que tal, veo que tu instruccion esta un poco compleja. prueba con esta solo modifica los datos. yme dices que onda. va que va.

mysql_query("INSERT INTO `directorio` (`idusuario`, `Nombre`,`ApellidoPaterno`,`ApellidoMaterno`,`Puesto`,`Ubicacion`,`TelOficinaExtencion`,`Celular`,`email`)VALUES('$_GET[NoEmpln]','$_GET[Nombren]','$_GET[ApellidoPaternon]','$_GET[ApellidoMaternon]','$_GET[Pueston]','$_GET[Ubicacionn]','$_GET[TelOfExtn]','$_GET[TelCeln]','$_GET[emailn]')",$db);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Claudio
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

RE:INSERT noguarda los datos SOLUCIONADO

Publicado por Claudio (70 intervenciones) el 22/02/2007 02:22:43
La solucion al problema era en el formulario, no pasaba las variables de los campos obtenidos de una tabla en de la BD, era problema de las comillas, y quedo de esta forma, funcionando OK

Código
[CODE]<option value="<? echo "$row[id_glosa]" ?>" selected><? echo "$row[glosa]"; ?> </option><? } ?></select><br />[/CODE]

Gracias a los que ayudaron a resolver el problema

He aprendido además varias cosas, que no sabia, mil gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar