Estoy haciendo una página para llevar la nomina de una empresa, el problema se me presenta en que debo guardar en una tabla parte de la información, obtener el ID del ultimo registro y con ese ID guardar en otra tabla de la base de datos, pero de todo esto de forma "masiva", pongo mi código:
clase sueldoDTO convierte el array y le envía los parámetros a la clase sueldoDAO, también reenvía el array y el ID devuelto de la clase sueldoDAO a otra clase, registromensualDTO:
Código PHP:
Ver original
<?php require '../../accesoDatos/sueldoDAO.php'; class sueldoDTO { function guardarSueldo($arraySueldo){ $sueldodao = new sueldoDAO(); $valorTotalAPagar = 0; foreach ($arraySueldo as $empleado) { $valor = $empleado['valor']; $cantidad = $empleado['cantidad']; $valorTotalAPagar = ($valor * $cantidad); } // en esta parte de código es cuando me salta el error // include_once 'registroMensualDTO.php'; $registrodto = new registroMensualDTO(); $registrodto->guardarRegistro($arraySueldo, $res); } } ?>
clase sueldoDAO guarda en la base de datos y me retorna el ultimo ID guardado.
Código PHP:
Ver original
<?php require 'Conectar.php'; class sueldoDAO { function guardarSueldo($valorTotal, $fecha){ $con = new Conectar(); $sentencia = "insert into sueldo (`ValorPagado`, `FechaRegistro`) values ('$valorTotal','$fecha')"; $resul = $con->ejecutar($sentencia); return $id; } } clase registromensual DTO recibe el array enviado de sueldoDTO y a su vez pasa los datos a registromensualDAO, un past true: <?php require '../../accesoDatos/registroMensualDAO.php'; class registroMensualDTO { function guardarRegistro($arrayDatos,$idSalario){ $registrodao = new registroMensualDAO(); $res = $registrodao->guardarRegistro($arrayDatos, $idSalario); return $res; } }
clase registromensualDAO convierte los datos y los guarda:
Código PHP:
Ver original
<?php require 'Conectar.php'; class registroMensualDAO { function guardarRegistro($arraySentencias,$idSueldo){ $con = new Conectar(); $sentencias = ''; foreach ($arraySentencias as $empleado) { $empleadoID = $empleado['usuarioID']; $valorID = $empleado['valorID']; $valor = $empleado['valor']; $cantidad = $empleado['cantidad']; $sentencias = "insert into registromensual (`Empleado_ID_Empleado`, `ValorPagos_ID_valorPagos`, `CantidadPiezas`, `FechaRegistro`, `Sueldo_ID_Sueldo`) values ('$empleadoID', '$valorID', '$cantidad', '$fecha', '$idSueldo')"; $con->ejecutar($sentencias); } } }
Primero debe guardar el sueldo y retornarme el ID y con ese ID guardar en registro mensual, como ya dije de forma masiva. En la primera tabla guarda sin problemas, pero en la segunda no y me devuelve el siguiente error: Fatal error: Cannot redeclare class Conectar in <b>C:\xampp\htdocs\mina_Escalon\accesoDatos\Conect ar
.php on line 3
No se ha que se deba el error, les agradezco que puedan orientarme un poco y lamento si el post es muy largo, no tengo casi experiencia y no se bien como explicar el error, de ante mano gracias.