PHP - error con insert un array a una tabla phpmyadmin

 
Vista:

error con insert un array a una tabla phpmyadmin

Publicado por Julio Ceballos (3 intervenciones) el 28/07/2020 23:33:06
el siguiente codigo trae los datos de una tabla y lo decodifica y cuando le doy a gravar grava solo el ultimo registro...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
static public function mdleditardetarllevta($tabla, $datos, $datos1, $datos3){
 
    $listaProductosvtaedit = json_decode($datos3, true);
 
    var_dump("$listaProductosvtaedit",$listaProductosvtaedit);
 
    $totalitemvtaedit = sizeof($listaProductosvtaedit);
 
    for ($i = 0; $i <= $totalitemvtaedit; $i++) {
 
        $stmt = Conexion::conectar()->prepare("INSERT INTO $tabla (codigovta, codigoprod, cantidadvta, valor, total, porcimpuesto) VALUES (:codigovta, :codigoprodvta, :cantidadvta, :valorvta, :totalvta, :porcimpuesto)");
 
	    $stmt->bindParam(":codigovta", $datos, PDO::PARAM_INT);
	    $stmt->bindParam(":porcimpuesto", $datos1, PDO::PARAM_INT);
		$stmt->bindParam(":codigoprodvta", $listaProductosvtaedit[$i]["id"], PDO::PARAM_INT);
		$stmt->bindParam(":cantidadvta", $listaProductosvtaedit[$i]["cantidad"], PDO::PARAM_INT);
		$stmt->bindParam(":valorvta", $listaProductosvtaedit[$i]["precio"], PDO::PARAM_INT);
		$stmt->bindParam(":totalvta", $listaProductosvtaedit[$i]["total"], PDO::PARAM_INT);
 
       $stmt->execute();
 
    }
 
    if($stmt->execute()){
 
        return "ok";
 
    }else{
 
        return "error";
    }
 
    $stmt->close();
	$stmt = null;
}
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
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

error con insert un array a una tabla phpmyadmin

Publicado por joel (1269 intervenciones) el 29/07/2020 10:47:35
Hola Julio, tienes dos $stmt->execute();... y solo deberia haber el que esta dentro del bucle for... el de fuera te sobra.

Faltaría ver el contenido de las variables para ver porque solo te guarda el ultimo... pero si los valores son correctos, te los deberia de guardar todos.
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

error con insert un array a una tabla phpmyadmin

Publicado por JULIO (3 intervenciones) el 01/08/2020 17:56:22
Hola ya probé esto y no funciona, creo que cuando borro los registro para insertarlo los nuevos la base de datos o el array se queda en en ultimo registros, sin embargo en la tabla se cuentan los id automático, sin son 5 registro y el id esta en 2 solo grava el ultimo pero el id es el 7.
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 Luis
Val: 128
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

error con insert un array a una tabla phpmyadmin

Publicado por Luis (31 intervenciones) el 29/07/2020 10:58:45
Saca la linea de conectar antes del For

$stmt = Conexion::conectar()->prepare("INSERT INTO $tabla (codigovta, codigoprod, cantidadvta, valor, total, porcimpuesto) VALUES
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

error con insert un array a una tabla phpmyadmin

Publicado por JULIO (3 intervenciones) el 01/08/2020 17:56:59
Hola ya probé esto y no funciona, creo que cuando borro los registro para insertarlo los nuevos la base de datos o el array se queda en en ultimo registros, sin embargo en la tabla se cuentan los id automático, sin son 5 registro y el id esta en 2 solo grava el ultimo pero el id es el 7.
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