I have to save some data from a form in a mysql database.
In a php file I have a select (combobox) that is filled with values from tables in the database. I think I have the insert code well, but for some reason it does not save anything.
I leave the code below to see if someone detects something strange, the truth is that I have hours and I do not see what can be ...
<?php
/*GENERA UNA NUEVA SESIÓN*/
session_start();
try {
/*CONEXION A BASE DE DATOS MYSQL*/
$servidor="localhost";
$nombre_usuario="root";
$pass="";
$base_datos="aa";
$mensaje="";
$conexion=new PDO("mysql:host=$servidor; dbname=$base_datos", $nombre_usuario,$pass);
$conexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
if (isset($_POST['submit'])) {
$query="INSERT INTO tbl_incidencias (id_registro,id_tipo_solicitud,id_categoria,id_subcategoria,id_metodo_ingreso,id_estado,fecha_registro,detalle_incidencia) VALUES (:id_registro, :id_tipo_solicitud, :id_categoria, :id_subcategoria, :id_metodo_ingreso, :id_estado, :fecha_registro, :detalle_incidencia)";
//Preparamos la Consulta
$insertar = $conexion->prepare($query);
$insertar->bindParam('id_registro',$_POST['idRegistro'],PDO::PARAM_INT); //PDO::PARAM_INT
$insertar->bindParam('id_tipo_solicitud',$_POST['tipo_solicitud'],PDO::PARAM_INT); //PDO::PARAM_STR
$insertar->bindParam('id_categoria',$_POST['categoria'],PDO::PARAM_INT);
$insertar->bindParam('id_subcategoria',$_POST['subcategoria'],PDO::PARAM_INT);
$insertar->bindParam('id_metodo_ingreso',$_POST['metodoIngreso'],PDO::PARAM_INT);
$insertar->bindParam('id_estado',$_POST['estadoInicial'],PDO::PARAM_INT);
$insertar->bindParam('fecha_registro',$_POST['fechaRegistro'],PDO::PARAM_STR);
$insertar->bindParam('detalle_incidencia',$_POST['detalle'],PDO::PARAM_STR);
//Ejecutamos la Consulta
$insertar->execute();
}
} catch(PDOException $error){
$mensaje=$error->getMessage();
}
if(isset($_SESSION['rut_funcionario'])){
} else{
header('location:ingresar.php');
}
?>
<!DOCTYPE HTML>
<html lang="es">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Alta de Incidencia/Solicitud - Modulo Web | Sistema de Gestión de Incidencias </title>
<meta name="Modulo Web - Sistema de Gestión de Incidencias" content="Modulo Web para Alta de Incidencias - Sistema de Gestión de Incidencias">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="css/bootstrap.css" rel="stylesheet" type="text/css"/>
<link href="css/style.css" rel="stylesheet" type="text/css"/>
<link href="css/fonts/font-awesome.min.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<header>
header
</header>
<!--Navegacion-->
<nav class="navbar navbar-inverse">
<div class="container">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" data-target="#navbarCollapse" data-toggle="collapse" class="navbar-toggle">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a href="#" class="navbar-brand">Bienvenido(a): <strong><?php echo $_SESSION['nombre_funcionario']; ?></strong>
</div>
<!-- Collection of nav links and other content for toggling -->
<div id="navbarCollapse" class="collapse navbar-collapse">
<ul class="nav navbar-nav" >
<li><a href="panelFuncionario.php">Ver Mis Solicitudes</a></li>
<li><a class="active" href="#">Ingresar Nueva Solicitud</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><?php echo '<a href="logout.php">Cerrar Sesión</a>'; ?></li>
</ul>
</div>
</div>
</nav>
<!--CONTENEDOR PRINCIPAL-->
<div class="container">
<h2>Alta de Incidencia/Solicitud de Soporte TI</h2>
<div class="row">
<div class="panel panel-primary">
<div class="panel-heading"><i class="fa fa-plus"></i> Favor Ingrese los datos presentados a continuación</div>
<div class="panel-body">
<!--FORMULARIO-->
<div class="row">
<form action="altaIncidencia.php" role="form" method="POST">
<div class="col-lg-12">
<!--TIPO DE SOLICITUD-->
<div class="form-group col-lg-4">
<label for="tipo_solicitud" class="control-label">Tipo de Solicitud</label>
<?php
$db = new PDO('mysql:host=localhost;dbname=db_incidencias_muniquel;charset=utf8mb4','root', '');
//$query= "SELECT id_tipo_solicitud, identificacion_solicitud FROM tbl_tipo_solicitud";
echo '<select name="tipo_solicitud" class="form-control">';
foreach($db->query('SELECT id_tipo_solicitud, identificacion_solicitud FROM tbl_tipo_solicitud') as $row) {
echo '<option value="'.$row['id_tipo_solicitud'].'">'.$row['identificacion_solicitud'].'</option>';
}
echo '</select>';
?>
</div>
<!--CATEGORIA DE LA INCIDENCIA-->
<div class="form-group col-lg-4">
<label for="categoria" class="control-label">Categoría de Incidencia/Solicitud</label>
<?php
$db = new PDO('mysql:host=localhost;dbname=db_incidencias_muniquel;charset=utf8mb4','root', '');
//$query= "SELECT id_tipo_solicitud, identificacion_solicitud FROM tbl_tipo_solicitud";
echo '<select name="categoria" class="form-control">';
foreach($db->query('SELECT id_categoria, identificacion_categoria FROM tbl_categoria_incidencia') as $row) {
echo '<option value="'.$row['id_categoria'].'">'.$row['identificacion_categoria'].'</option>';
}
echo '</select>';
?>
</div>
<!--SUB-CATEGORIA DE LA INCIDENCIA/SOLICITUD-->
<div class="form-group col-lg-4">
<label for="subcategoria" class="control-label">Sub-categoría Incidencia/Solicitud</label>
<?php
$db = new PDO('mysql:host=localhost;dbname=db_incidencias_muniquel;charset=utf8mb4','root', '');
//$query= "SELECT id_tipo_solicitud, identificacion_solicitud FROM tbl_tipo_solicitud";
echo '<select name="subcategoria" class="form-control">';
foreach($db->query('SELECT id_subcategoria, identificacion_subcategoria FROM tbl_subcategoria_incidencia') as $row) {
echo '<option value="'.$row['id_subcategoria'].'">'.$row['identificacion_subcategoria'].'</option>';
}
echo '</select>';
?>
</div>
<!--METODO DE INGRESO DE LA INCIDENCIA/SOLICITUD-->
<div class="form-group col-lg-4">
<label for="metodoIngreso" class="control-label">Metodo de Ingreso</label>
<select name="metodoIngreso" class="form-control">
<option value="2">Vía Modulo Web</option>
</select>
</div>
<!--ESTADO INICIAL DE LA INCIDENCIA/SOLICITUD-->
<div class="form-group col-lg-4">
<label for="estadoInicial" class="control-label">Estado de la Incidencia/Solicitud</label>
<select name="estadoInicial" class="form-control">
<option value="1">Incidencia Registrada</option>
</select>
</div>
<!--FECHA DE REGISTRO-->
<div class="form-group col-lg-4">
<label for="fechaRegistro" class="control-label">Fecha de la Solicitud</label>
<input type="date" name="fechaRegistro" class="form-control" value="<?php echo date('Y-m-d'); ?>">
</div>
</div>
<div class="col-lg-12">
<!--DETALLE DE LA INCIDENCIA/SOLICITUD-->
<div class="form-group col-lg-12">
<label for="detalle" class="control-label">Detalle de la Incidencia/Solicitud</label>
<textarea name="detalle" class="form-control" placeholder="Digite aqui el detalle de la Incidencia/Solicitud"></textarea>
</div>
</div>
<div class="col-lg-12">
<div class="form-group col-lg-12">
<input type="submit" class="btn btn-md btn-success" value="Validar Datos e Ingresar nueva Solicitud">
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<footer>
<div class="container">
<p class="text-center">Copyright © Nicolás Ezequiel Almonacid 2018 – Diseñado y Desarrollado por <a class="text-white" href="mailto:[email protected]">nikos25</p>
<!--Pasamos el ID del Funcionario Registrado a un input no visible-->
<input type="hidden" name="idRegistro" value="<?php echo $_SESSION['id_registro']; ?>">
</div>
</footer>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<!-- Bootstrap Core JavaScript -->
<script src="js/bootstrap.js"></script>
<script src="js/jquery.validate.js"></script>
<script src="js/main.js"></script>
</body>
</html>
I thank everyone from your time and help ...