
recuperar consulta con datos ingresados por el usuario
Publicado por Hugo (37 intervenciones) el 29/04/2022 03:36:18
Hola, buenas noches.
Tengo el siguiente problema si alguien me puede ayudar.
Tengo una página donde hago un select de acuerdo a los filtros seleccionados por el usuario y se carga en ella una tabla con los mismos.
En esta tabla a su vez anexo un botón de "autorizar", el cual al oprimirlo modifica el estado a "autorizado".
El problema surge ya que una vez autorizado, la página se recarga y borra la tabla, ya que pierde las variables de la consulta.
Lo que pretendo y no sé como hacer (ya que probé con variables de $_SESSION pero me devuelve error), es que una vez que se oprima el botón "autorizar" cambie el estado y se imprima nuevamente en pantalla la tabla con los datos ingresados originalmente por el usuario, para que el mismo no vuelva a ingresar los datos por cada autorización que realice.
Copio el código y desde ya muchas gracias:
modifica_estado.php:
autorizar_lic.php:
Tengo el siguiente problema si alguien me puede ayudar.
Tengo una página donde hago un select de acuerdo a los filtros seleccionados por el usuario y se carga en ella una tabla con los mismos.
En esta tabla a su vez anexo un botón de "autorizar", el cual al oprimirlo modifica el estado a "autorizado".
El problema surge ya que una vez autorizado, la página se recarga y borra la tabla, ya que pierde las variables de la consulta.
Lo que pretendo y no sé como hacer (ya que probé con variables de $_SESSION pero me devuelve error), es que una vez que se oprima el botón "autorizar" cambie el estado y se imprima nuevamente en pantalla la tabla con los datos ingresados originalmente por el usuario, para que el mismo no vuelva a ingresar los datos por cada autorización que realice.
Copio el código y desde ya muchas gracias:
modifica_estado.php:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
<html>
<head>
<title>Modifica Estado</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<link rel="stylesheet" type="text/css" href="../../Cabecera/cabecera.css">
<link rel="stylesheet" type="text/css" href="aut_lic.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Kaisei+HarunoUmi:wght@500&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/6.11.0/sweetalert2.css"/>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/6.11.0/sweetalert2.js"></script>
</head>
<body>
<?php
include ("../../Conexion/conexion.php");
?>
<div id="Logo">
<img src= "../../logo.jpg" class="soc"/>
</div>
<div id="Cabecera">
<?php
require ("../../Login/iniciar_session.php");
?>
</div>
<div id="Contenedor">
<div id="formulario">
<form action="<?php echo $_SERVER['PHP_SELF']?>" method="post" class="form">
<div class="formulario">
<h2 class="titulo">Autorizar Licencias Reglamentarias</h2><br><br>
<span class="Desde">Desde:
<input type="date" name="desde" class="fecha" required/></span>
<span class="Hasta">Hasta:
<input type="date" name="hasta" class="fecha" required/></span>
<span class="estado_lic">Sección:</span><select name="seccion" class="estado" required/>
<?php
include ("../../Conexion/conexion.php");
$consulta_funcionarios = "SELECT * FROM secciones ORDER BY nombre ASC";
$guarda_funcionarios = $conexion->query($consulta_funcionarios);
echo "<option value='' name='seccion' disabled selected class='estado'>Seleccione</option>";
while($array_combo=$guarda_funcionarios->fetch_assoc()){
echo "<option value='".$array_combo['nombre']."'>".$array_combo['nombre']."</option>";
}
?>
</select>
<span class="estado_lic">Estado:</span><select name="estado" class="estado">
<option>Todos</option>
<option>Autorizado</option>
<option>Denegado</option>
<option>Pendiente</option>
<option>Anulado</option>
</select>
<button type="submit" name="ver" class="btn btn-primary btn boton">Visualizar</button></span>
<a href="panel_licencias.php"><button type="button" class="btn btn-danger btn volver">Volver</button></a>
</div>
</form>
<?php
if(isset($_POST['ver'])){
$desde=$_POST['desde'];
$hasta=$_POST['hasta'];
$seccion=$_POST['seccion'];
$estado=$_POST['estado'];
if($estado=='Todos'){
$datos="SELECT * FROM licreglam WHERE (fechaDesde>='$desde' && fechaDesde<='$hasta') && seccion='$seccion' ORDER BY fechaDesde ASC";
$query_datos=$conexion->query($datos);
}
if($estado!=='Todos'){
$datos="SELECT * FROM licreglam WHERE (fechaDesde>='$desde' && fechaDesde<='$hasta') && seccion='$seccion' && estado='$estado' ORDER BY fechaDesde DESC";
$query_datos=$conexion->query($datos);
}
if($query_datos==NULL){
echo "<script>
function alerta(){
swal({
title: 'Ups...!',
text: 'No existen registros para el período seleccionado',
type: 'info',
}).then(function(){
window.location='autorizar_licencias.php';
});
}
alerta();
</script>";
exit();
}
?>
<div class="col-md-8-sm">
<br><table class="table table-striped table-responsive table-sm table-hover table-bordered">
<thead class="encabezado" >
<tr>
<th>N° Solic.</th>
<th>N° Func.</th>
<th>Nombre</th>
<th>Apellido</th>
<th>Desde</th>
<th>Hasta</th>
<th>Cant. de Días</th>
<th>Fecha de Solicitud</th>
<th>Estado</th>
<th>Fecha de Autorización</th>
<th>Autorizado por</th>
<th>Autorizar</th>
<th>Denegar</th>
</tr>
</thead>
<tbody>
<?php
while($array_datos=$query_datos->fetch_assoc()){
$fecha_desde=$array_datos['fechaDesde'];
$desde=strtotime($fecha_desde);
$f_desde=date('d-m-Y',$desde);
$fecha_hasta=$array_datos['fechaHasta'];
$hasta=strtotime($fecha_hasta);
$f_hasta=date('d-m-Y',$hasta);
$fecha_solicitud=$array_datos['fechaSolicitud'];
$solic=strtotime($fecha_solicitud);
$f_solic=date('d-m-Y',$solic);
$fecha_autorizacion=$array_datos['fechaAutorizacion'];
$autoric=strtotime($fecha_autorizacion);
$f_autoric=date('d-m-Y',$autoric);
?>
<tr>
<td><?php echo $array_datos['idSolic']?></td>
<td><?php echo $array_datos['numFunc']?></td>
<td><?php echo $array_datos['nombre']?></td>
<td><?php echo $array_datos['apellido']?></td>
<td><?php echo $f_desde?></td>
<td><?php echo $f_hasta?></td>
<td><?php echo $array_datos['cantDias']?></td>
<td><?php echo $f_solic?></td>
<?php
if($array_datos['estado']=='Autorizado'){
echo '<th style="background-color:#AEFE8B">'.$array_datos['estado']. '</th>';
}
if($array_datos['estado']=='Pendiente'){
echo '<th style="background-color:#FFFC4E">'.$array_datos['estado']. '</th>';
}
if($array_datos['estado']=='Denegado'){
echo '<th style="background-color:#FF6C73">'.$array_datos['estado']. '</th>';
}
if($array_datos['estado']=='Anulado'){
echo '<th style="background-color:#CACACA">'.$array_datos['estado']. '</th>';
}
?>
<td>
<?php
if($array_datos['fechaAutorizacion']==NULL){
echo '';
}else{
echo $f_autoric;
}
?></td>
<td><?php echo $array_datos['usu_autoriz']?></td>
<?php
$dato=$array_datos['idSolic'];
?>
<th><a href="autorizar_lic.php?idSolic=<?php echo $array_datos['idSolic']; ?>" class="btn btn-primary btn-sm" >Autorizar</a></th>
<th><a href="anula_lic.php?idSolic=<?php echo $array_datos['idSolic'] ?>" class="btn btn-danger btn-sm" >Denegar</a></th>
</tr>
<?php
}
?>
</tbody>
</table>
<?php
}
?>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</div>
</div>
</body>
</html>
autorizar_lic.php:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<html>
<head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/6.11.0/sweetalert2.css"/>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/6.11.0/sweetalert2.js"></script>
</head>
<body>
</body>
<?php
include ("../../Login/iniciar_session.php");
include ("../../Conexion/conexion.php");
$id=$_GET['idSolic'];
$desde=$_GET['desde'];
$hasta=$_GET['hasta'];
$seccion=$_GET['seccion'];
$estado=$_GET['estado'];
$usuario_autoriz=$_SESSION['usuario'].' - '.$_SESSION['nombre'].' '.$_SESSION['apellido'];
$estado1="SELECT * FROM licreglam WHERE idSolic='$id'";
$estado_verif=mysqli_num_rows($conexion->query($estado1));
$estado2="SELECT estado FROM licreglam WHERE idSolic='$id' && estado='Anulado'";
$estado_verif2=mysqli_num_rows($conexion->query($estado2));
if($estado_verif2!==1){
echo "<script>
function alerta(){
swal({
title: 'Excelente!',
text: 'Se autorizó la licencia con éxito',
type: 'success',
}).then(function(){
window.location.href='//localhost/Universal2/Gestion RRHH/Autorizaciones/autorizar_licencias.php';
});
}
alerta();
</script>";
$datos="SELECT * FROM licreglam WHERE (fechaDesde>='$desde' && fechaDesde<='$hasta') && seccion='$seccion' && estado='$estado' ORDER BY fechaDesde DESC";
$query_datos=$conexion->query($datos);
$sql="UPDATE licreglam SET estado='Autorizado' WHERE idSolic='$id'";
$sql2="UPDATE licreglam SET fechaAutorizacion=NOW() WHERE idSolic='$id'";
$sql3="UPDATE licreglam SET usu_autoriz='$usuario_autoriz' WHERE idSolic='$id'";
$query=mysqli_query($conexion,$sql);
$query2=mysqli_query($conexion,$sql2);
$query3=mysqli_query($conexion,$sql3);
}else{
echo "<script>
function alerta(){
swal({
title: 'Acción no permitida',
text: 'No es posible autorizar una solicitud anulada por el Jefe del Sector.',
type: 'error',
}).then(function(){
window.location.href='//localhost/Universal2/Gestion RRHH/Autorizaciones/autorizar_licencias.php';
});
}
alerta();
</script>";
}
?>
</html>
Valora esta pregunta


0