File "crearItems.php"
Full Path: C:/wamp64/www/loteo1/crearItems.php
File size: 5.43 KB
MIME-type: text/x-php
Charset: utf-8
<?php
// Iniciar la sesión
session_start();
// Incluir conexión a la base de datos
include("connection.php");
// Obtener la conexión llamando a la función connection()
$conection = connection();
// Variable para mensajes
$mensaje = "";
// Procesar el formulario de registro
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Verificar si los campos están definidos
if (isset($_POST['proceso']) && isset($_POST['item']) && isset($_POST['descripcion'])) {
$proceso = $_POST['proceso'];
$item = $_POST['item'];
$descripcion = $_POST['descripcion'];
// Determinar la tabla según el proceso
$tabla = ($proceso === 'Pollo') ? 'items' : 'items_Pavos';
try {
// Prevenir inyección SQL usando prepared statements con mysqli
$stmt = $conection->prepare("INSERT INTO $tabla (item, descripcion) VALUES (?, ?)");
$stmt->bind_param("ss", $item, $descripcion);
if ($stmt->execute()) {
$mensaje = '<div class="alert alert-success">Ítem registrado con éxito en la tabla <strong>' . $tabla . '</strong>.</div>';
} else {
// Verificar si el error es por duplicado de clave primaria
if ($stmt->errno == 1062) { // 1062 es el código de error para entrada duplicada
$mensaje = '<div class="alert alert-warning">El ítem ya existe en la tabla ' . $tabla . '.</div>';
} else {
$mensaje = '<div class="alert alert-danger">Error: ' . $stmt->error . '</div>';
}
}
$stmt->close();
} catch (Exception $e) {
// Capturar excepciones y verificar si es por duplicado
if ($e->getCode() == 1062) {
$mensaje = '<div class="alert alert-warning">El ítem ya existe en la tabla ' . $tabla . '.</div>';
} else {
$mensaje = '<div class="alert alert-danger">Error: ' . $e->getMessage() . '</div>';
}
}
} else {
$mensaje = '<div class="alert alert-warning">Por favor, complete todos los campos del formulario (proceso, ítem y descripción).</div>';
}
}
?>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="Sebastian Obando">
<meta name="copyright" content="Sebastian Obando">
<title>Creación de Items Loteo</title>
<link rel="icon" type="image/png" href="img/icono.png">
<!-- Bootstrap CSS -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<style>
body {
background-image: linear-gradient(to right, #d29531, #ffe5c9);
padding: 20px;
}
.form-container {
max-width: 500px;
margin: 0 auto;
padding: 20px;
border: 1px solid #ccc;
border-radius: 10px;
background-color: #f9f9f9;
}
.btn-primary {
background-color: #ec9c42;
border: none;
color: white;
padding: 10px 20px;
font-size: 16px;
border-radius: 5px;
cursor: pointer;
transition: background-color 0.3s ease;
}
.btn-primary:hover {
background-color: #c47f34;
}
.logo {
display: block;
margin: 0 auto;
width: 250px;
height: auto;
}
</style>
</head>
<body>
<div class="form-container">
<img src="img/LOGO.png" alt="Logo" class="logo" />
<br>
<h2 class="text-center">Creación de Items Loteo</h2>
<?php echo $mensaje; ?>
<form method="post" action="">
<div class="mb-3">
<label for="proceso" class="form-label">Tipo De Proceso:</label>
<select class="form-control" id="proceso" name="proceso" required>
<option value="">Seleccione...</option>
<option value="Pollo">Pollo</option>
<option value="Pavo">Pavo</option>
</select>
</div>
<div class="mb-3">
<label for="item" class="form-label">Item:</label>
<input type="text" class="form-control" id="item" name="item" required>
</div>
<div class="mb-3">
<label for="descripcion" class="form-label">Descripción:</label>
<input type="text" class="form-control" id="descripcion" name="descripcion" required>
</div>
<div class="d-grid gap-2">
<button type="submit" class="btn btn-primary">Crear Item</button>
<a href="consulta.php" class="btn btn-secondary">Volver</a>
</div>
</form>
</div>
<!-- Bootstrap JS -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>
</body>
</html>
<?php
// Cerrar la conexión al final del archivo
$conection->close();
?>