Dario Andre Salguero Ipinza - Tarea Semana 2
Dario Andre Salguero Ipinza - Tarea Semana 2
Dario Andre Salguero Ipinza - Tarea Semana 2
SEMANA 3
Darío Salguero
27-11-2023
Programa de continuidad en Ingeniería en Informática
DESARROLLO
Se adjunta zip con los archivos del formulario y páginas adicionales en funcionamiento. Se
dejarán en blanco los campos con los accesos a la base de datos.
1. Relaciona el formulario diseñado con los campos correspondientes al personal docente, que son:
nombre del profesor, apellido del profesor, fecha del curso a dictar (DD/MM/AAAA), curso que
dicta, hora planificada de inicio (HH:MM), hora planificada de fin (HH:MM), asistencia (SI/NO),
hora de inicio al curso de la asistencia (Si asistió) (HH:MM), hora de fin de la asistencia (si asistió)
(HH:MM). Si no asistió indicar el tipo de inasistencia (JUSTIFICADA/NO JUSTIFICADA), descripción
de la causa si es justificada.
ingreso.php
<!doctype html>
<html lang="en">
<?php
include "includes/conexion.php";
include "includes/head.php";
if($_SERVER['REQUEST_METHOD'] == "POST")
{
$nombre = $_POST['nombre'];
$apellido = $_POST['apellido'];
$curso = $_POST['curso'];
$fecha_curso = $_POST['fecha_curso'];
$hora_inicio_plan = $_POST['hora_inicio_plan'];
$hora_fin_plan = $_POST['hora_fin_plan'];
<div class="container">
<div class="form-group">
<form role="form" name="formulario" method="POST" action="ingresar.php">
<br>
</form>
</div>
<?php
include "includes/footer.php";
include "includes/scripts.php";
?>
</div>
</body>
</html>
2. Revisa la forma en que se almacenan los datos que se ingresan al formulario para verificar la
validez de los mismos.
cursos.php
<!doctype html>
<html lang="en">
<?php
include "includes/conexion.php";
include "includes/head.php";
?>
<body>
<div class="container">
<h2><em>Listado de cursos</em></h2><br>
<br>
<b><a href="ingresar.php">Ingresar nuevo curso</a></b>
<br><br>
<thead>
<tr>
</thead>
<tbody>
<?
/*LISTA DE CLIENTES*/
$query = "SELECT * FROM tarea3";
$result = $conn->query($query);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$id = $row['id'];
?>
<tr>
<td style="vertical-align:middle;"><?php echo $row['id'];?></td>
<td style="vertical-align:middle;"><?php echo $row['nombre'];?></td>
<td style="vertical-align:middle;"><?php echo $row['apellido'];?></td>
<td style="vertical-align:middle;"><?php echo $row['curso'];?></td>
<td style="vertical-align:middle;"><?php echo $row['fecha_curso'];?></td>
<td style="vertical-align:middle;"><?php echo $row['hora_inicio_plan'];?></td>
<td style="vertical-align:middle;"><?php echo $row['hora_fin_plan'];?></td>
<form role="form" name="formulario" method="POST" action="asistencia.php">
<input type="hidden" name="id" value="<?php echo $id;?>">
<td style="vertical-align:middle;"><?php
if ($row['asistencia'] != ""){
?><a href="asistencia.php" target="_SELF"><button type="submit" class="btn
btn-info btn-xs">Detalle asistencia</button></a><?php
}else {
?><button type="submit" name="registro" class="btn btn-info btn-xs">Ingresar
asistencia</button><?php
}
?></td>
</form>
<td style="align:center;vertical-align:middle;">
<form role="form" name="formulario" method="POST" action="modificar.php">
<input type="hidden" name="id" value="<?php echo $id;?>">
<a href="modificar.php" target="_SELF">
<button type="submit" class="btn btn-warning btn-xs" name="mod" class="btn
btn-info btn-xs">Modificar</button>
</a>
</form>
<form role="form" name="formulario" method="POST" action="eliminar.php">
<input type="hidden" name="id" value="<?php echo $id;?>">
<a href="eliminar.php" target="_SELF">
<button type="submit" class="btn btn-danger btn-xs" name="del" class="btn btn-
info btn-xs">Eliminar</button>
</a>
</form>
</td>
</tr>
<?php
}}
?>
</tbody>
</table>
</div>
<?php
include "includes/footer.php";
include "includes/scripts.php";
?>
</div>
</body>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript"
src="//cdn.datatables.net/1.10.21/js/jquery.dataTables.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#cli').DataTable( {
"order": [[ 1, "asc" ]],
"language": {
"sProcessing": "Procesando...",
"sLengthMenu": "Mostrar _MENU_ registros",
"sZeroRecords": "No se encontraron resultados",
"sEmptyTable": "Ningún dato disponible en esta tabla",
"sInfo": "Mostrando registros del _START_ al _END_ de un total de
_TOTAL_",
"sInfoEmpty": "Mostrando registros del 0 al 0 de un total de 0",
"sInfoPostFix": "",
"sSearch": "Buscar:",
"sUrl": "",
"sInfoThousands": ",",
"sLoadingRecords": "Cargando...",
"oPaginate": {
"sFirst": "Primero",
"sLast": "Último",
"sNext": "Siguiente",
"sPrevious": "Anterior"
},
"oAria": {
"sSortAscending": ": Activar para ordenar la columna de manera
ascendente",
"sSortDescending": ": Activar para ordenar la columna de manera
descendente"
},
} );
} );
</script>
</html>
asistencia.php
<!doctype html>
<html lang="en">
<body>
<div class="container">
<?php
include "includes/conexion.php";
include "includes/head.php";
$id = $_POST['id'];
if(isset($_POST['registrar_asistencia']))
{
$asistencia = $_POST['asistencia'];
$hora_inicio = $_POST['hora_inicio'];
$hora_fin = $_POST['hora_fin'];
$tipo_inasistencia = $_POST['tipo_inasistencia'];
$justificacion_inasistencia = $_POST['justificacion_inasistencia'];
<?php
}
if(isset($_POST['registro'])){
?>
<p>
<h3>Registro de la asistencia al curso</h3>
</p>
<p>
<div class="form-group">
<form role="form" name="formulario" method="POST" action="asistencia.php">
</form>
</div>
</p>
<?php
} else {
/*LISTA DE CURSOS*/
$query = "SELECT * FROM tarea3 where id='$id'";
$result = $conn->query($query);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
?>
<div class="form-group">
<p>
<h3>Detalle de la asistencia al curso</h3>
</p>
<form role="form" name="formulario" method="POST" action="asistencia.php">
<?php
$curso = $row['curso'];
$fecha_curso = $row['fecha_curso'];
$hora_inicio = $row['hora_inicio'];
$hora_fin = $row['hora_fin'];
$tipo_inasistencia = $row['tipo_inasistencia'];
$justificacion_inasistencia = $row['justificacion_inasistencia'];
if ($row['asistencia'] == "si"){
echo '<label>Curso</label><input type="text" class="form-control input-md"
name="curso" value="'.$curso.'"><br>';
echo '<label>Fecha del curso</label><input type="text" class="form-control input-md"
name="fecha_curso" value="'.$fecha_curso.'"><br>';
echo '<label>Hora de inicio</label><input type="text" class="form-control input-md"
name="hora_inicio" value="'.$hora_inicio.'"><br>';
echo '<label>Hora de fin</label><input type="text" class="form-control input-md"
name="hora_fin" value="'.$hora_fin.'"><br>';
} elseif ($row['asistencia'] == "no"){
echo '<label>Tipo de inasistencia</label><input type="text" class="form-control input-
md" name="tipo_inasistencia" value="'.$tipo_inasistencia.'"><br>';
echo '<label>Justificación de la inasistencia</label><input type="text"
class="form-control input-md" name="justificacion_inasistencia" value="'.
$justificacion_inasistencia.'" maxlength="250"><br>';
}
?>
</form>
</div>
</p>
</div>
<?php
}}
include "includes/footer.php";
include "includes/scripts.php";
?>
3. Elabora el formulario para permitir el ingreso, eliminación y modificación de datos del profesor de
la institución educativa. Para esto se debe utilizar MySQL.
modificacion.php
<!doctype html>
<html lang="en">
<?php
include "includes/conexion.php";
include "includes/head.php";
$id = $_POST['id'];
/*LISTA DE CLIENTES*/
$query = "SELECT * FROM tarea3 WHERE id='$id'";
$result = $conn->query($query);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$id = $row['id'];
$nombre = $row['nombre'];
$apellido = $row['apellido'];
$curso = $row['curso'];
$fecha_curso = $row['fecha_curso'];
$hora_inicio_plan = $row['hora_inicio_plan'];
$hora_fin_plan = $row['hora_inicio_plan'];
$asistencia = $row['asistencia'];
$hora_inicio = $row['hora_inicio'];
$hora_fin = $row['hora_fin'];
$tipo_inasistencia = $row['tipo_inasistencia'];
$justificacion_inasistencia = $row['justificacion_inasistencia'];
}}
if(isset($_POST['modificar']))
{
$nombre = $_POST['nombre'];
$apellido = $_POST['apellido'];
$curso = $_POST['curso'];
$fecha_curso = $_POST['fecha_curso'];
$hora_inicio_plan = $_POST['hora_inicio_plan'];
$hora_fin_plan = $_POST['hora_fin_plan'];
$asistencia = $_POST['asistencia'];
$hora_inicio = $_POST['hora_inicio'];
$hora_fin = $_POST['hora_fin'];
$tipo_inasistencia = $_POST['tipo_inasistencia'];
$justificacion_inasistencia = $_POST['justificacion_inasistencia'];
$sql = "
update tarea3 set
nombre='$nombre',
apellido='$apellido',
curso='$curso',
fecha_curso='$fecha_curso',
hora_inicio_plan='$hora_inicio_plan',
hora_fin_plan='$hora_fin_plan',
asistencia='$asistencia',
hora_inicio='$hora_inicio',
hora_fin='$hora_fin',
tipo_inasistencia='$tipo_inasistencia',
justificacion_inasistencia='$justificacion_inasistencia'
where id='$id'";
$result = $conn->query($sql);
?>
<script>
window.location = "cursos.php";
</script>
<?php
}
?>
<body>
<div class="container">
<h2><em>Modificación de datos</em></h2>
<div class="form-group">
<form role="form" name="formulario" method="POST" action="modificar.php">
<br>
</form>
</div>
<?php
include "includes/footer.php";
include "includes/scripts.php";
?>
</div>
</body>
</html>
eliminar.php
<!doctype html>
<html lang="en">
<?php
include "includes/conexion.php";
include "includes/head.php";
$id = $_POST['id'];
/*LISTA DE CLIENTES*/
$query= "DELETE FROM tarea3 WHERE id='$id'";
$result = $conn->query($query);
?>
<script>
window.location = "cursos.php";
</script>
<body>
<div class="container">
<?php
include "includes/footer.php";
include "includes/scripts.php";
?>
</div>
</body>
</html>
4. Examina o inspecciona el almacenamiento de datos desde los formularios hasta la base de datos,
con la finalidad de comprobar la validez de la información del registro de los profesores.
REFERENCIAS BIBLIOGRÁFICAS
IACC. (2023). Conexión a base de datos. Taller de integración de software. Semana 3.