La Web del Programador: Comunidad de Programadores
https://www.lawebdelprogramador.com/foros/PHP/1332150-Insertar-datos-mySQL.html

Insertar datos mySQL

sin imagen de perfil

Insertar datos mySQL

Publicado por gerniracing (47 intervenciones) el 11/05/2012 22:48:48
Buenas noches,

Necesito guardar varios registros en la base de datos. Lo tengo de la siguiente forma, pero tengo el problema que solo me guarda el primer registro, el segundo ya no me guarda. Este seria el codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
if(isset($_POST['enviar']))
{
	for ( $i = 1 ; $i <= $_POST["miSelect"] ; $i ++) {
			$id2 = sqlValue($i, "int");
			$idcarrera = sqlValue($IDCarrera, "int");
			$nombre = sqlValue($_POST['nombre_'.$i.''], "text");
			$fecha = sqlValue($_POST['fecha_'.$i.''], "date");
			$metros = sqlValue($_POST['metros_'.$i.''], "int");
			$entrena = sqlValue($_POST['entrena_'.$i.''], "int");
 
			$sql = "INSERT INTO T03Tramos (ID2TramoT03, IDCarreraT03, NombreT03, FechaT03, KmT03, EntrenamientoT03, TramoTerminadoT03) ";
			$sql.= "VALUES ($id2, $idcarrera, $nombre, $fecha, $metros, $entrena, 0)";
			echo $sql;
			echo "<br>";
			mysql_query($sql, $conexion);
 
	}
}
require("cerrar_conexion.php");
?>


Tengo para que me muestre los inserts para poder ver lo que hace y lo imprime bien, pero luego lo dicho, en el registro solo guarda una vez, esto es lo que me muestra en pantalla:

1
2
INSERT INTO T03Tramos (ID2TramoT03, IDCarreraT03, NombreT03, FechaT03, KmT03, EntrenamientoT03, TramoTerminadoT03) VALUES (1, 1, 'A', '2011-01-01', 1, 0, 0)
INSERT INTO T03Tramos (ID2TramoT03, IDCarreraT03, NombreT03, FechaT03, KmT03, EntrenamientoT03, TramoTerminadoT03) VALUES (2, 1, 'B', '2011-01-01', 2, 0, 0)


Cual puede ser el problema?

Muchas gracias
Imágen de perfil de xve

Insertar datos mySQL

Publicado por xve (6935 intervenciones) el 12/05/2012 09:06:39
Hola, las consultas son correctas, debería de ejecutar correctamente los dos insert... si ejecutas los insert manualmente funcionan?

Podría ser que hubiera alguna primary key y se repitiera o algo por el estilo?
sin imagen de perfil

Insertar datos mySQL

Publicado por gerniracing (47 intervenciones) el 15/05/2012 23:40:37
Al final tenias razon, era un problema en la base de datos con los indices.

Muchas gracias