Foros del Web » Programando para Internet » PHP »

Problema al insertar querys

Estas en el tema de Problema al insertar querys en el foro de PHP en Foros del Web. Hola, como estan, tengo un problema y no logro detectarlo, quiero guardar mis datos ingresados en mi formulario a mi base de datos MySQL pero ...
  #1 (permalink)  
Antiguo 15/08/2010, 22:37
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Problema al insertar querys

Hola, como estan, tengo un problema y no logro detectarlo, quiero guardar mis datos ingresados en mi formulario a mi base de datos MySQL pero que la clave de la tabla se autoincremente, es decir q yo no voy a ingresar ese dato en el formulario, espero me puedan dar alguna ayuda o solucion a esto. mi codigo es el sgt:

Código PHP:
<?php
include("conex.php");

$insumo=$_POST["txt_insumo"];
$provee=$_POST["txt_proveedor"];
$cantidad=$_POST["txt_cantidad"];
$precio=$_POST["txt_precio"];
$fecha=$_POST["txt_fecha"];

$sql "INSERT INTO `bd`.`tabla` (`id_compra`, `id_insumo`, `id_proveedor`, `id_cantidad`, `monto`, `fecha`) VALUES (' ', '$insumo', '$provee', '$cantidad', '$precio', '$fecha')";

$result=mysql_query($sql);
header("location:successfull.php");
?>
  #2 (permalink)  
Antiguo 15/08/2010, 22:49
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Necesito Ayuda urgente!!!

bueno creo q deberias informarte un pokito de mysql tambien lo q necesitas en un campo autoincrement
aunq esa duda es de base de datos no de php suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 15/08/2010, 23:46
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Necesito Ayuda urgente!!!

bueno si creiste que no le habia asignado esa opcion en el mysql si lo hice, te lo muestro en la imagen

  #4 (permalink)  
Antiguo 16/08/2010, 00:54
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Necesito Ayuda urgente!!!

Cita:
Iniciado por Alfredex Ver Mensaje
$sql = "INSERT INTO `bd`.`tabla` (`id_compra`, `id_insumo`, `id_proveedor`, `id_cantidad`, `monto`, `fecha`) VALUES (' ', '$insumo', '$provee', '$cantidad', '$precio', '$fecha')";
el campo autoincrement no es necesario colocarlo es decir QUITASELO
ej:
Código PHP:
Ver original
  1. $sql = "INSERT INTO `bd`.`tabla` (`id_insumo`, `id_proveedor`, `id_cantidad`, `monto`, `fecha`) VALUES ('$insumo', '$provee', '$cantidad', '$precio', '$fecha')";
asi el te lo incrementa suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #5 (permalink)  
Antiguo 16/08/2010, 01:13
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Necesito Ayuda urgente!!!

Cita:
Iniciado por carlos_belisario Ver Mensaje
el campo autoincrement no es necesario colocarlo es decir QUITASELO
ej:
Código PHP:
Ver original
  1. $sql = "INSERT INTO `bd`.`tabla` (`id_insumo`, `id_proveedor`, `id_cantidad`, `monto`, `fecha`) VALUES ('$insumo', '$provee', '$cantidad', '$precio', '$fecha')";
asi el te lo incrementa suerte
UHMMM.... si es que te entendi, me dices q le quite el atributo de autoincrement en mysql?

por otro lado modifiqué la consulta y nada no ingresa... que hago?

osea, le quité el atributo y cambie la consulta pero nada! no corre
  #6 (permalink)  
Antiguo 16/08/2010, 01:39
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Necesito Ayuda urgente!!!

no q kites el campo de la consulta el atributo lo debes de dejar autoincrement la consulta el campo autoincrement no se coloca xq el es automatico tal cual te lo puse arriba
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #7 (permalink)  
Antiguo 16/08/2010, 09:34
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Necesito Ayuda urgente!!!

Cita:
Iniciado por carlos_belisario Ver Mensaje
no q kites el campo de la consulta el atributo lo debes de dejar autoincrement la consulta el campo autoincrement no se coloca xq el es automatico tal cual te lo puse arriba
uhmmm, pues nada amigo, me sale lo mismo, ... ahora aqui viene mi duda, esta tabla tiene 3 claves foraneas, puede ser x eso q no lo guarde?
  #8 (permalink)  
Antiguo 16/08/2010, 09:39
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Tema movido desde PHP orientado a objetos a PHP
  #9 (permalink)  
Antiguo 16/08/2010, 13:13
Avatar de CieloEterno  
Fecha de Ingreso: marzo-2006
Ubicación: México
Mensajes: 52
Antigüedad: 18 años
Puntos: 0
De acuerdo Respuesta: Problema al insertar querys

el campo idcompra es la llave de tu tabla?
Si, debe ser un integer con autoicrement.

ahora, manda a imprimir tu consulta para ver realmente este tomando los valores, yo lo que hago es que una vez que en pantalla mando a imprimir la consulto, la copio y pego, para ejecutarlo directamente en la base de datos.

Hay una opción de SQL en el phpmyadmin que estás usando.

Duda, tu tabla se llama tabla?

$sql = "INSERT INTO `bd`.`tabla` (`id_insumo`, `id_proveedor`, `id_cantidad`, `monto`, `fecha`) VALUES ('$insumo', '$provee', '$cantidad', '$precio', '$fecha')"
__________________
Aquel que no tiene nada por lo cual morir, no tiene nada por que vivir
  #10 (permalink)  
Antiguo 16/08/2010, 13:26
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

Cita:
Iniciado por CieloEterno Ver Mensaje
el campo idcompra es la llave de tu tabla?
Si, debe ser un integer con autoicrement.

ahora, manda a imprimir tu consulta para ver realmente este tomando los valores, yo lo que hago es que una vez que en pantalla mando a imprimir la consulto, la copio y pego, para ejecutarlo directamente en la base de datos.

Hay una opción de SQL en el phpmyadmin que estás usando.

Duda, tu tabla se llama tabla?

$sql = "INSERT INTO `bd`.`tabla` (`id_insumo`, `id_proveedor`, `id_cantidad`, `monto`, `fecha`) VALUES ('$insumo', '$provee', '$cantidad', '$precio', '$fecha')"
si es el nombre de mi tabla!... pero no me guarda los datos :S, y estoy usando el autoincrement del phpMyadmin, pero nada :(.... es la primera vez q me pasa. ya eh hecho esto antes y no entiendo xq me pasa esto ahora... x favor ayudenme

Última edición por Alfredex; 16/08/2010 a las 13:31
  #11 (permalink)  
Antiguo 16/08/2010, 13:31
Avatar de CieloEterno  
Fecha de Ingreso: marzo-2006
Ubicación: México
Mensajes: 52
Antigüedad: 18 años
Puntos: 0
Respuesta: Problema al insertar querys

Puedes colocar una impresión de consulta de la tabla desde phpmyadmin, justo después de ejecutar la consulta.

El código de tu formulario está por POST o GET?


Creo que no estás concatenando bien tus variables:

$sql = "INSERT INTO `bd`.`tabla` (`id_insumo`, `id_proveedor`, `id_cantidad`, `monto`, `fecha`) VALUES ('$insumo', '$provee', '$cantidad', '$precio', '$fecha')"

a

$sql = "INSERT INTO `bd`.`tabla` (`id_insumo`, `id_proveedor`, `id_cantidad`, `monto`, `fecha`) VALUES (' " & $insumo & " ', ' " + & $provee & + ', ' " + $cantidad + " ', ' " + $precio + " ', ' " + $fecha + " ')"

Sino parece que quieres insertar la cadena '$cantidad' (literal, pesitos cadena) en un campo integer.

Haz un print de tu cadena para que veas lo que te digo

print $sql;
__________________
Aquel que no tiene nada por lo cual morir, no tiene nada por que vivir
  #12 (permalink)  
Antiguo 16/08/2010, 13:45
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

esta es la consulta q me bota el phpmyadmin
Cita:
INSERT INTO `bd`.`tabla` (
`id_compra` ,
`id_insumo` ,
`id_proveedor` ,
`id_cantidad` ,
`monto` ,
`fecha`
)
VALUES (
NULL , '2', '3', '24', '6000', '2010-08-18'
);
y creo q la sentencia q tu me sugieres esta erronea... pero veamos?? q pasa ahora?
  #13 (permalink)  
Antiguo 16/08/2010, 13:46
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

ya lo probé y no funciona... el php me bota error a tu sentencia!
  #14 (permalink)  
Antiguo 16/08/2010, 14:17
 
Fecha de Ingreso: junio-2007
Ubicación: Buenos Aires, Argentina
Mensajes: 262
Antigüedad: 16 años, 10 meses
Puntos: 1
Respuesta: Problema al insertar querys

Pregunto: cuando ingresás

Cita:
INSERT INTO `bd`.`tabla` (
`id_compra` ,
`id_insumo` ,
`id_proveedor` ,
`id_cantidad` ,
`monto` ,
`fecha`
)
VALUES (
NULL , '2', '3', '24', '6000', '2010-08-18'
);
en la opción SQL del phpMyAdmin, ¿no se genera algún error? ¿simplemente te indica que las filas ingresadas fueron cero?
__________________
Moebius Digital | La pieza que faltaba
Diseño web | Web hosting
  #15 (permalink)  
Antiguo 16/08/2010, 14:23
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

amigo, simplemente no ingresa nada, ni se genera una fila con registros 0!
  #16 (permalink)  
Antiguo 16/08/2010, 14:25
 
Fecha de Ingreso: junio-2007
Ubicación: Buenos Aires, Argentina
Mensajes: 262
Antigüedad: 16 años, 10 meses
Puntos: 1
Respuesta: Problema al insertar querys

El phpMyAdmin siempre da una respuesta, como mínimo indica que los registros ingresados fueron cero (o sea, que no se ingresó nada). ¿Podés hacer un copy+paste de eso?
__________________
Moebius Digital | La pieza que faltaba
Diseño web | Web hosting
  #17 (permalink)  
Antiguo 16/08/2010, 20:27
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

Cita:
Iniciado por MoebiusDigital Ver Mensaje
El phpMyAdmin siempre da una respuesta, como mínimo indica que los registros ingresados fueron cero (o sea, que no se ingresó nada). ¿Podés hacer un copy+paste de eso?
Osea... cuando ingreso los datos x el formulario... no se registran o guardan en mi tabla!!! me dejo entender?... xfavor ayuda :(
  #18 (permalink)  
Antiguo 16/08/2010, 22:17
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema al insertar querys

Cita:
$result=mysql_query($sql);
aca depura tu consulta y muestranos q te dice
ej:
Código PHP:
$result=mysql_query($sql) or die (mysql_error()); 
y muestra q yte dic a ver si te podemos ayudar
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #19 (permalink)  
Antiguo 16/08/2010, 22:49
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

hola... pues le puse la sentencia q me dijiste y me arroja este error! :

Incorrect date value: '' for column 'fecha' at row 1

que debo hacer?
  #20 (permalink)  
Antiguo 16/08/2010, 22:52
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema al insertar querys

muestra q tienes en la variable $fecha xq el error esta en ese dato y por eso no te ingresa nada
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #21 (permalink)  
Antiguo 16/08/2010, 23:25
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

uhmm tu crees q sea por el tipo de dato?... le puse date... cual deberia ir si no es ese?
  #22 (permalink)  
Antiguo 16/08/2010, 23:53
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema al insertar querys

el tipo de dato esta bien lo q no debe estar bien es el contenido de la variable q estas enviando la cual debe estar en este formato para poder ingresar a la db
año,mes,dia ej:
Código PHP:
echo date("Y-m-d"); 
asi debe estar el formato como lo tienes??
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #23 (permalink)  
Antiguo 17/08/2010, 00:09
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

uhmmm pues no le asigne! :S como lo haria?...le puse varchar y si agrega!
  #24 (permalink)  
Antiguo 17/08/2010, 08:49
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema al insertar querys

Cita:
Iniciado por Alfredex Ver Mensaje
uhmmm pues no le asigne! :S como lo haria?...le puse varchar y si agrega!
eso lo harias como lo desees con tal y tengas el formato "aaaa-mm-dd" si viste lo q te puse eso te imprimira la fecha de hoy en la forma correcta para ingresar a la base de datos despues queda de ti como asignarlo revisa lo q se te coloca y las fechas pienso yo que hay q trabajarlas con el formato q se destino para ellas q es date suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #25 (permalink)  
Antiguo 02/11/2010, 01:32
 
Fecha de Ingreso: mayo-2009
Mensajes: 34
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema al insertar querys

Cita:
Iniciado por carlos_belisario Ver Mensaje
eso lo harias como lo desees con tal y tengas el formato "aaaa-mm-dd" si viste lo q te puse eso te imprimira la fecha de hoy en la forma correcta para ingresar a la base de datos despues queda de ti como asignarlo revisa lo q se te coloca y las fechas pienso yo que hay q trabajarlas con el formato q se destino para ellas q es date suerte
Hola... disculpa q los vuelva a molestar =( .. pero no logré solucionar ese tema... finalmente lo deje con varchar y funciono asi... ahora se me presenta el sgt problema... tengo el siguiente codigo :
Código PHP:
<?php
include("cnn_mysql.php");

$nombres=$_POST["nape"];
$fnac=$_POST["fnac"];
$dir=$_POST["dir"];
$cnatal=$_POST["cnatal"];
$un=$_POST["un"];
$ciclo=$_POST["ciclo"];
$mail=$_POST["mail"];
$pr1=$_POST["pr1"];
$pr1_o=$_POST["pr1_o"];
$pr2=$_POST["pr2"];
$
3_1_1=$_POST["3_1_1"];
$
3_1_2=$_POST["3_1_2"];
$
3_1_3=$_POST["3_1_3"];
$
3_1_4=$_POST["3_1_4"];
$
3_1_5=$_POST["3_1_5"];
$
3_1_6=$_POST["3_1_6"];
$
3_1_7=$_POST["3_1_7"];
$
3_1_8=$_POST["3_1_8"];
$
3_1_9=$_POST["3_1_9"];
$
3_1_10=$_POST["3_1_10"];
$
3_1_11=$_POST["3_1_11"];
$
3_1_12=$_POST["3_1_12"];
$
3_1_13=$_POST["3_1_13"];
$
3_2_1=$_POST["3_2_1"];
$
3_2_2=$_POST["3_2_2"];
$
3_2_3=$_POST["3_2_3"];
$
3_2_4=$_POST["3_2_4"];
$
3_2_5=$_POST["3_2_5"];
$
3_2_6=$_POST["3_2_6"];
$
3_2_7=$_POST["3_2_7"];
$
3_2_8=$_POST["3_1_8"];
$
3_2_9=$_POST["3_2_9"];
$
3_2_10=$_POST["3_2_10"];
$
3_2_11=$_POST["3_2_11"];
$
3_2_12=$_POST["3_2_12"];
$
3_2_13=$_POST["3_2_13"];
$
3_2_14=$_POST["3_2_14"];
$
3_2_15=$_POST["3_2_15"];
$
3_2_16=$_POST["3_2_16"];
$
3_2_17=$_POST["3_2_17"];
$
3_3_1=$_POST["3_3_1"];
$
3_3_2=$_POST["3_3_2"];
$
3_3_3=$_POST["3_3_3"];
$
3_3_4=$_POST["3_3_4"];
$
3_3_5=$_POST["3_3_5"];
$
3_4_1=$_POST["3_4_1"];
$
3_4_2=$_POST["3_4_2"];
$
3_4_3=$_POST["3_4_3"];
$
3_4_4=$_POST["3_4_4"];
$
3_4_5=$_POST["3_4_5"];
$
3_4_6=$_POST["3_4_6"];
$
3_4_7=$_POST["3_4_7"];
$
3_4_8=$_POST["3_4_8"];
$
3_4_9=$_POST["3_4_9"];
$
3_4_10=$_POST["3_4_10"];
$
3_4_11=$_POST["3_4_11"];
$
3_4_12=$_POST["3_4_12"];
$
3_4_13=$_POST["3_4_13"];
$
3_4_14=$_POST["3_4_14"];
$
3_4_15=$_POST["3_4_15"];
$
3_4_16=$_POST["3_4_16"];
$
3_5_1=$_POST["3_5_1"];
$
3_5_2=$_POST["3_5_2"];
$
3_5_3=$_POST["3_5_3"];
$
3_5_4=$_POST["3_5_4"];
$
3_5_5=$_POST["3_5_5"];
$
3_5_6=$_POST["3_5_6"];
$
3_5_7=$_POST["3_5_7"];
$
3_5_8=$_POST["3_5_8"];
$
3_5_9=$_POST["3_5_9"];
$
3_5_10=$_POST["3_5_10"];
$
3_5_11=$_POST["3_5_11"];
$
3_5_12=$_POST["3_5_12"];
$
3_5_13=$_POST["3_5_13"];
$pr4=$_POST["pr4"];
$pr5=$_POST["pr5"];
$pr6=$_POST["pr6"];

  
$sql "INSERT INTO 'encuesta' (nombres, fnac, dir, cnatal, utra, ciclo, mail, pr1, pr1_o, pr2, pr3.1.1, pr3.1.2, pr3.1.3, pr3.1.4, pr3.1.5, pr3.1.6, pr3.1.7, pr3.1.8, pr3.1.9, pr3.1.10, pr3.1.11, pr3.1.12, pr3.1.13, pr3.2.1, pr3.2.2, pr3.2.3, pr3.2.4, pr3.2.5, pr3.2.6, pr3.2.7, pr3.2.8, pr3.2.9, pr3.2.10, pr3.2.11, pr3.2.12, pr3.2.13, pr3.2.14, pr3.2.15, pr3.2.16, pr3.2.17, pr3.3.1, pr3.3.2, pr3.3.3, pr3.3.4, pr3.3.5, pr3.4.1, pr3.4.2, pr3.4.3, pr3.4.4, pr3.4.5, pr3.4.6, pr3.4.7, pr3.4.8, pr3.4.9, pr3.4.10, pr3.4.11, pr3.4.12, pr3.4.13, pr3.4.14, pr3.4.15, pr3.4.16, pr3.4.17, pr3.5.1, pr3.5.2, pr3.5.3, pr3.5.4, pr3.5.5, pr3.5.6, pr3.5.7, pr3.5.8, pr3.5.9, pr3.5.10, pr3.5.11, pr3.5.12, pr3.5.13, pr4, pr5, pr6) VALUES ('$nombres','$fnac','$dir','$cnatal','$un','$ciclo','$mail','$pr1','$pr1_o','$pr2','$3_1_1','$3_1_2','$3_1_3','$3_1_4','$3_1_5','$3_1_6','$3_1_7','$3_1_8','$3_1_9','$3_1_10','$3_1_11','$3_1_12','$3_1_13','$3_2_1','$3_2_2','$3_2_3','$3_2_4','$3_2_5','$3_2_6','$3_2_7','$3_2_8','$3_2_9','$3_2_10','$3_2_11','$3_2_12','$3_2_13','$3_2_14','$3_2_15','$3_2_16','$3_2_17','$3_3_1','$3_3_2','$3_3_3','$3_3_4','$3_3_5','$3_4_1','$3_4_2','$3_4_2','$3_4_3','$3_4_4','$3_4_5','$3_4_6','$3_4_7','$3_4_8','$3_4_9','$3_4_10','$3_4_11','$3_4_12','$3_4_13','$3_4_14','$3_4_15','$3_4_16','$3_5_1','$3_5_2','$3_5_3','$3_5_4','$3_5_5','$3_5_6','$3_5_7','$3_5_8','$3_5_9','$3_5_10','$3_5_11','$3_5_12','$3_5_13','$pr4','$pr5','$pr6')";
  
$result=mysql_query($sql);

header("location:home.html");
?>

en la bd tengo el campo codigo q es el campo q se autoincrementará!...
y me bota el mismo error!!! = Data error Column count doesn't match value count at row 1!!! por favor me pueden ayudar?

Etiquetas: querys
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 19:01.