Hola ha todos como estan veran tengo un problema al realizar una insercion en una tabla que esta dentro de una transaccion aqui mi codigo
Código PHP:
Ver originalpublic static function registrar_metas($nm_cabecera_data,$nm_detalle_data_do,$nm_detalle_data_cg) {
try {
$cnBD = Conexion::getConexion();
$cnBD->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY,true);
$cnBD->beginTransaction();
$query_metas = $cnBD->prepare("INSERT INTO metas(jc_usuario_id)VALUES (?);SELECT LAST_INSERT_ID()meta_id");
$query_metas->bindParam(1,$nm_cabecera_data["nm_usuario"],PDO::PARAM_INT);
$query_metas->execute();
$result = $query_metas->fetchAll(PDO::FETCH_ASSOC);
$query_metas->closeCursor();
if (isset($result["meta_id"])) { $sql ="INSERT INTO metas_detalles(jc_metas_id,jc_unidad_negocio_id,jc_metas_fecha,jc_metas_monto)VALUES ";
if($nm_cabecera_data["nm_unid_do"] == 1){
for($ni;$ni<count($nm_detalle_data_do);$ni++){ $sql.= "(".$result["meta_id"].",".$nm_cabecera_data["nm_unid_do"].",'".$nm_detalle_data_do[$ni]['nm_fecha']."','".$nm_detalle_data_do[$ni]['nm_monto']."'),";
}
}elseif($nm_cabecera_data["nm_unid_cg"] == 5){
for($n;$n<count($nm_detalle_data_cg);$n++){ $sql.= "(".$result["meta_id"].",".$nm_cabecera_data["nm_unid_cg"].",'".$nm_detalle_data_cg[$n]['nm_fecha']."','".$nm_detalle_data_cg[$n]['nm_monto']."'),";
}
}
$smt = $cnBD->prepare($sql);
$smt->execute();
}
$cnBD->commit();
} catch (PDOException $e) {
echo $e->getMessage();
$cnBD->rollback();
}
}
}
cuando lo ejecuto me sale este erro
no se en que parte estoy mal ayudaaaa por favorrr
![lloron](http://static.forosdelweb.com/fdwtheme/images/smilies/chillando.png)
![lloron](http://static.forosdelweb.com/fdwtheme/images/smilies/chillando.png)