<?php include("../connection.php"); $con = connection(); $sql = "SELECT * FROM ingreso_equipos"; $query = mysqli_query($con, $sql); ?> <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content="Ingreso de Equipos Nuevos"> <meta name="keywords" content="html, css, bases de datos, php"> <meta name="author" content="Sebastian Obando"> <meta name="copyright" content="Sebastian Obando"> <link href="../css/style.css" rel="stylesheet"> <link href="../css/header.css" rel="stylesheet"> <title>Registrar Equipo Nuevo</title> <link rel="icon" type="image/png" href="../img/icono1.png"> <style> :root { --primary-color: #2c3e50; --secondary-color: #3498db; --accent-color: #e74c3c; --light-color: #ecf0f1; --dark-color: #2c3e50; --success-color: #27ae60; --warning-color: #f39c12; --danger-color: #e74c3c; } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; margin: 0; padding: 0; background-color: #f5f5f5; color: #333; line-height: 1.6; } .container { max-width: 1200px; margin: 20px auto; padding: 20px; background-color: white; border-radius: 8px; box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); } h1, h2, h3 { color: var(--primary-color); margin-bottom: 20px; } h1 { border-bottom: 2px solid var(--secondary-color); padding-bottom: 10px; font-size: 2.2em; } h2 { font-size: 1.8em; color: var(--dark-color); } h3 { font-size: 1.4em; margin-top: 30px; } /* CSS para el formulario principal */ .form-general { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 15px; margin-bottom: 30px; } input[type="text"], input[type="number"], input[type="date"], select { padding: 12px; border: 1px solid #ddd; border-radius: 4px; font-size: 16px; transition: border 0.3s; } input[type="text"]:focus, input[type="number"]:focus, input[type="date"]:focus, select:focus { border-color: var(--secondary-color); outline: none; box-shadow: 0 0 5px rgba(52, 152, 219, 0.5); } input[type="submit"], input[type="button"], button { padding: 12px 20px; color: white; border: none; border-radius: 4px; cursor: pointer; font-size: 16px; transition: background-color 0.3s, transform 0.2s; } input[type="submit"]:hover, input[type="button"]:hover, button:hover { transform: translateY(-2px); } .btn-primary { background-color: var(--secondary-color); } .btn-primary:hover { background-color: #2980b9; } .btn-success { background-color: var(--success-color); } .btn-success:hover { background-color: #219955; } .btn-danger { background-color: var(--danger-color); } .btn-danger:hover { background-color: #c0392b; } .btn-warning { background-color: var(--warning-color); } .btn-warning:hover { background-color: #e67e22; } /* Contenedores de equipos - LAYOUT HORIZONTAL */ .equipo-container { display: grid; grid-template-columns: 2fr 1fr 2fr 2fr 1fr; /* Columnas para: equipo, cantidad, referencia, serial, botón */ gap: 15px; margin-bottom: 15px; padding: 15px; background-color: #f8f9fa; border-radius: 8px; align-items: center; } .equipo-container.equipo-principal { border-left: 4px solid var(--secondary-color); grid-template-columns: 2fr 1fr 2fr 2fr; /* Sin columna para botón eliminar */ } .equipo-container.equipo-adicional { border-left: 4px solid var(--warning-color); } .users-table { margin-top: 30px; } .users-table--consul { display: inline-block; padding: 10px 20px; background-color: var(--secondary-color); color: white; text-decoration: none; border-radius: 4px; transition: background-color 0.3s; } .users-table--consul:hover { background-color: #2980b9; } .footer { text-align: center; margin-top: 40px; padding: 20px; } .copyright { display: inline-block; padding: 10px 25px; background-color: var(--primary-color); color: white; border-radius: 4px; font-size: 14px; font-weight: bold; } /* Contenedor de botones */ .button-container { display: flex; justify-content: space-between; margin-top: 20px; gap: 15px; } /* Efectos y animaciones */ @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .container { animation: fadeIn 0.5s ease-out; } /* Responsive design */ @media (max-width: 768px) { .form-general { grid-template-columns: 1fr; } .equipo-container { grid-template-columns: 1fr; gap: 10px; } .button-container { flex-direction: column; } .container { padding: 15px; margin: 10px; } } </style> </head> <body> <div class="container" style="text-align: center;"> <input type="button" class="btn-warning" onclick="window.location.href='subMenu.php';" value="Volver"> <input type="button" class="btn-primary" onclick="window.location.href='../index.php';" value="Menú Principal"> </div> <div class="container"> <h1>Registrar Equipo Nuevo</h1> <?php if (isset($_GET['success'])): ?> <div style="padding: 15px; background-color: #d4edda; color: #155724; border-radius: 4px; margin-bottom: 20px;"> ¡Los equipos se han registrado correctamente! </div> <?php endif; ?> <form action="insertarNuevo.php" method="POST"> <!-- Datos generales de la factura --> <div class="form-general"> <input type="date" name="fecha" placeholder="Fecha" required> <input type="text" name="proveedor" placeholder="Proveedor" required> <input type="text" name="factura" placeholder="Número de Factura" required> <select name="tipoMovimiento" required> <option value="" disabled selected>Estado Movimiento:</option> <option value="Nuevo">Nuevo</option> <option value="Reposicion">Reposicion</option> </select> <select name="lugar" required> <option value="" disabled selected>Almacenar En:</option> <option value="Sistemas">Sistemas</option> <option value="Comercial">Comercial</option> <option value="Compras">Compras</option> </select> <input type="text" name="observacion" placeholder="Observaciones"> </div> <!-- Equipo principal --> <h3>Equipo Principal</h3> <div class="equipo-container equipo-principal"> <input type="text" name="equipos[0][equipo]" placeholder="Tipo de Equipo" required> <input type="number" name="equipos[0][cantidad]" placeholder="Cantidad" min="1" required> <input type="text" name="equipos[0][referencia]" placeholder="Referencia"> <input type="text" name="equipos[0][serial]" placeholder="Número de Serial"> </div> <!-- Contenedor para equipos adicionales --> <div id="equipos-adicionales"></div> <!-- Botones --> <div class="button-container"> <button type="button" class="btn-success" onclick="agregarEquipo()">+ Añadir otro equipo</button> <input type="submit" class="btn-primary" value="Guardar todos los equipos"> </div> </form> </div> <div class="container users-table"> <h2>Consultar Equipos Disponibles</h2> <a href="disponible.php" class="users-table--consul">Consultar Inventario</a> </div> <!-- Footer con copyright --> <div class="footer"> <div class="copyright"> &#169; Avicampo <?php echo date('Y'); ?> </div> </div> <script> let contadorEquipos = 1; function agregarEquipo() { const contenedorEquipos = document.getElementById('equipos-adicionales'); const nuevoEquipo = document.createElement('div'); nuevoEquipo.className = 'equipo-container equipo-adicional'; nuevoEquipo.innerHTML = ` <input type="text" name="equipos[${contadorEquipos}][equipo]" placeholder="Tipo de Equipo" required> <input type="number" name="equipos[${contadorEquipos}][cantidad]" placeholder="Cantidad" min="1" required> <input type="text" name="equipos[${contadorEquipos}][referencia]" placeholder="Referencia"> <input type="text" name="equipos[${contadorEquipos}][serial]" placeholder="Número de Serial"> <button type="button" class="btn-danger" onclick="eliminarEquipo(this)">Eliminar</button> `; contenedorEquipos.appendChild(nuevoEquipo); contadorEquipos++; } function eliminarEquipo(boton) { if (confirm('¿Estás seguro de que deseas eliminar este equipo?')) { const equipo = boton.closest('.equipo-adicional'); equipo.remove(); } } </script> </body> </html>