Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Insert multiple en PHP+MySQL

Estas en el tema de Insert multiple en PHP+MySQL en el foro de Mysql en Foros del Web. Buenos dias, tengo un pequeño quebradero de cabeza, estoy haciendo unos formularios para guardar una información en una base de datos y queria hacer un ...
  #1 (permalink)  
Antiguo 17/06/2009, 02:04
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 1 mes
Puntos: 3
Insert multiple en PHP+MySQL

Buenos dias, tengo un pequeño quebradero de cabeza, estoy haciendo unos formularios para guardar una información en una base de datos y queria hacer un insert multiple para poder guardar varias filas del tirón, lo tengo puesto asi:

Código:
$consulta = "INSERT INTO `pedidos` (numpedido,codigo,nombre,cantidad,precio) VALUES ($numpedido,$codigo, '$nombre','$cantidad','$precio'),('$numpedido','$codigo2', '$nombre2','$cantidad2','$precio2'), ('$numpedido','$codigo3', '$nombre3','$cantidad3','$precio3'), ('$numpedido','$codigo4', '$nombre4','$cantidad4','$precio4'), ('$numpedido','$codigo5', '$nombre5','$cantidad5','$precio5')";

$resultado = mysql_query($consulta, $link);

mysql_close($link);
Pero nada, no hay manera de que lo guarde en la base de datos, y si pongo justo antes de realizar la consulta un echo $precio5; si que me muestra bien por pantalla...asi que he pensado que quizas no se realice asi el insert multiple...

¿Alguna solución?

Saludos y gracias de antemano!!!
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #2 (permalink)  
Antiguo 17/06/2009, 04:24
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Insert multiple en PHP+MySQL

Haz un echo no a $precios5, sino a $consulta, para ver qué contiene antes de enviarla. Debería mostrar los valores. SI muestra otra cosa, entonces el problema está allí: en la construcción de la sentencia.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 17/06/2009, 06:11
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 1 mes
Puntos: 360
Respuesta: Insert multiple en PHP+MySQL

Bloggin

Dos cosas:

Debes tener en cuenta el tipo de dato que estas insertando. Fijate que en el primer insert $numpedido y $codigo van sin comillas, por lo que pensé que eran campos numéricos, pero a partir de la segunda inserción, los ingresas con comillas, como si fueran tipo carácter.

Muchas veces me pasó que todo lo veía bien, pero no me insertaba en la base de datos. El problema era que el campo no recibía a cantidad de caraceres que le pasaba, pero como tenía deshabilitado en php la visualización de errores y warnings no me mostraba nada.
En pocas palabras, tenía un campo varchar(10) y le pasaba 12 caracteres y no me permitia insertar correctamente.

Un buen ejercicio, es probar directamente en mysql la inserción que presenta fallos, así se detecta facilmente si el error lo presenta la mysql o PHP.

Revisa esto y cuéntanos como te va.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming

Última edición por huesos52; 17/06/2009 a las 06:19
  #4 (permalink)  
Antiguo 17/06/2009, 10:54
Avatar de Huacho12  
Fecha de Ingreso: septiembre-2008
Ubicación: Isla Mujeres Q. Roo
Mensajes: 175
Antigüedad: 15 años, 6 meses
Puntos: 10
Respuesta: Insert multiple en PHP+MySQL

Hola!!

Efectivamente como explican gnzsoloyo y huesos52; primero imprime tu consulta con el echo la copias y peguas directamente en la consola de mysql, si es correcta se insetan sin error alguno de lo contrario te arrojara un error, en la cual entra la explicacion de huesos52 la cual podria ser las comillas o en dado caso la longitud del dato no es igual a la longitud del campo cuando creaste tu tabla

saludos
  #5 (permalink)  
Antiguo 18/06/2009, 04:23
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 1 mes
Puntos: 3
Respuesta: Insert multiple en PHP+MySQL

Vale, al final me di cuenta de los errores que tenia, el de no poner las comillas que vosotros deciis y despues el no hacer mysql_fetch_array($result), despues de hacerlo ya me funciona perfect :)

Muchas gracias!!!
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
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 01:38.