Al guardar los registros en la DB me los duplica.
Publicado por Sergio (26 intervenciones) el 07/07/2017 12:23:19
Saludos Pues eso, cuando hago un insert me guarda dos registros iguales.
Desde aqui se hace la llamada con AJAX:
Y este es el INSERT a la DB. Yo no veo el porque lo duplica por que solo hay un execute.
Gracias y un saludo.
Desde aqui se hace la llamada con AJAX:
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
36
37
$("#addproducto").click(function(){
var formaddproducto = $("#formaddproducto").serialize();
$.ajax({
type: 'POST',
url: 'db-admin/añadir-registro-producto.php',
data: formaddproducto,
success: function(respuesta){
if(respuesta == 1)
{
var resultado = "Se ha añadido el Producto correctamente.";
//$( "#alerta" ).addClass( "alert alert-error collapse" );
$( "#alerta" ).html( resultado );
$( "#alerta" ).show();
$( "#alerta" ).fadeOut( 5000 );
}
if(respuesta == 2)
{
var resultado = "Se ha producido un error de conexion a la DB, intentelo de nuevo.";
//$( "#alerta" ).addClass( "alert alert-error collapse" );
$( "#alerta" ).html( resultado );
$( "#alerta" ).show();
$( "#alerta" ).fadeOut( 5000 );
}
if(respuesta == 3)
{
var resultado = "Todos los campos deben estar rellenos.";
//$( "#alerta" ).addClass( "alert alert-error collapse" );
$( "#alerta" ).html( resultado );
$( "#alerta" ).show();
$( "#alerta" ).fadeOut( 5000 );
}
}
});
return false;
});
Y este es el INSERT a la DB. Yo no veo el porque lo duplica por que solo hay un execute.
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?php
session_start();
include_once 'conexion-db.php';
/*Creamos la conexion*/
$nuevoconex = new Conexion();
//Creamos las Variables
$fecha = date('y-m-d');
$cat = $_POST['categoria'];
$subcat = $_POST['subcategoria'];
$nombreproduc = $_POST['nombreproduc'];
$categoria = $_POST['categoria'];
$cod_prod = $_POST['cod_prod'];
$subcategoria = $_POST['subcategoria'];
$descripcion = $_POST['descripcion'];
$precio = $_POST['precio'];
$stock = $_POST['stock'];
$imag = ($_FILES['img1']['name']);
$imag1 = ($_FILES['img2']['name']);
$imag2 = ($_FILES['img3']['name']);
$imag3 = ($_FILES['img4']['name']);
$dir_imag1 = "images/" .$cat."/".$subcat."/".$imag;
$dir_imag2 = "images/" .$cat."/".$subcat."/".$imag1;
$dir_imag3 = "images/" .$cat."/".$subcat."/".$imag2;
$dir_imag4 = "images/" .$cat."/".$subcat."/".$imag3;
// comprobamos que no haya campos vacios.
if(isset($cat)&&!empty($cat)&&
isset($subcat)&&!empty($subcat)&&
isset($nombreproduc)&&!empty($nombreproduc)&&
isset($categoria)&&!empty($categoria)&&
isset($cod_prod)&&!empty($cod_prod)&&
isset($subcategoria)&&!empty($subcategoria)&&
isset($descripcion)&&!empty($descripcion)&&
isset($precio)&&!empty($precio)&&
isset($stock)&&!empty($stock)
){
try{
$sentencia = $nuevoconex->prepare("INSERT INTO `tblproducto`(`Nombre`, `Categoria`,`Cod_prod`,
`Imagen`, `Imagen1`, `Imagen2`, `Imagen3`, `Subcategoria`, `Descripcion`, `Precio`, `Stock`, `Fecha`)
VALUES (:nombreproduc, :categoria, :codprod, :imagen, :imagen1, :imagen2, :imagen3,
:subcategoria, :descripcion, :precio, :stock, :fecha);");
$sentencia->bindParam(':nombreproduc', $nombreproduc, PDO::PARAM_STR);
$sentencia->bindParam(':categoria', $cat, PDO::PARAM_INT);
$sentencia->bindParam(':codprod', $cod_prod, PDO::PARAM_INT);
$sentencia->bindParam(':imagen', $dir_imag1, PDO::PARAM_STR);
$sentencia->bindParam(':imagen1', $dir_imag2, PDO::PARAM_STR);
$sentencia->bindParam(':imagen2', $dir_imag3, PDO::PARAM_STR);
$sentencia->bindParam(':imagen3', $dir_imag4, PDO::PARAM_STR);
$sentencia->bindParam(':subcategoria', $subcat, PDO::PARAM_INT);
$sentencia->bindParam(':descripcion', $descripcion, PDO::PARAM_STR);
$sentencia->bindParam(':precio', $precio, PDO::PARAM_STR);
$sentencia->bindParam(':stock', $stock, PDO::PARAM_STR);
$sentencia->bindParam(':fecha', $fecha, PDO::PARAM_STR);
$resultado = $sentencia->execute();
switch($resultado){
case true:
echo 1;
$sentencia = null;
break;
}
}catch(PDOException $e ){
echo "Error: ".$e;
echo 2;
}
}else{
echo 3;
}
$nuevoconex = null;
?>
Gracias y un saludo.
Valora esta pregunta
0