Actividad de aprendizaje 4 - Desarrollo web con php sena
Daniel Alexander PazTrabajo30 de Julio de 2018
3.723 Palabras (15 Páginas)2.761 Visitas
<!-- Archivo: index.php -->
<!--
Nombre: Daniel Alexander Paz Rodríguez
Programa: Desarrollo web con PHP
Ficha: 1727875
Evidencia: Taller "Uso de formularios para transferencia"
-->
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="shortcut icon" href="https://dl.dropboxusercontent.com/s/3x1tqjokkkmdjol/sena.png?dl=0" type="image/x-icon">
<!-- Se cargan los estilos CSS de bootstrap y las alertas JS de sweetalert-->
<link rel="stylesheet" href="https://dl.dropboxusercontent.com/s/l87xq6xct1nel5y/bootstrap.min.css?dl=0">
<script src="https://dl.dropboxusercontent.com/s/isxpvxkiimma8td/sweetalert.min.js?dl=0"></script>
<title>Ejercicio 4</title>
</head>
<body>
<br>
<?php
// Se incluyen los archivos que contienen las funciones más importantes de la aplicación.
include_once 'interfaz.php';
include_once 'transaccion.php';
?>
<form method="POST">
<!-- Se guarda el arreglo "$listaEstados" en un input de tipo hidden y se imprime, también se cuentan
todos los elementos del arreglo "$listaEstados" con la función de PHP "count()" y luego se imprime
al final del arreglo.
-->
<input type="hidden" name="Estados&limite" value="<?php for ($fila = 0; $fila < count($listaEstados); $fila++) {for ($puesto = 0; $puesto < count($listaEstados); $puesto++) {echo $listaEstados[$fila][$puesto] . "/";}} echo count($listaEstados);?>">
<table align="center" style="width: 0px; text-align: center;">
<tr>
<td>
<label for="fila">Fila:</label>
<div style="text-align:center;">
<select name="fila" id="fila" class="select-center" required>
<!-- Se llama a la función creada "SeleccioneFilas la cuál crea un "<select>" con sus respectivos "<option>" -->
<?php echo interfaz::SeleccioneFilas($listaEstados, $_POST["fila"] ?? null); ?>
</select>
</div>
</td>
</tr>
<tr>
<td>
<label for="puesto">Puesto:</label>
<div style="text-align:center;">
<select name="puesto" id="puesto" class="select-center" required>
<!-- Se llama a la función creada "SeleccionePuestos la cuál crea un "<select>" con sus respectivos "<option>" -->
<?php echo interfaz::SeleccionePuestos($listaEstados, $_POST["puesto"] ?? null); ?>
</select>
</div>
</td>
</tr>
<tr>
<td>
<label for="accion&estado">Acción:</label>
<div style="text-align:center;">
<select name="accion&estado" id="accion&estado" class="select-center" required>
<!-- Se llama a la función creada "SeleccioneAcciones la cuál crea un "<select>" con sus respectivos "<option>" -->
<?php echo interfaz::SeleccioneAcciones($listaAcciones, $_POST["accion&estado"] ?? null); ?>
</select>
</div>
</td>
</tr>
<tr>
<td>
<br>
<input class="btn btn-info" name="enviar" type="submit" value="Enviar">
<!-- Se redirecciona de nuevo a la página actual con el "onclick="location="" y
con "echo dirname($_SERVER['PHP_SELF']);" se imprime el nombre del directorio actual .
-->
<input class="btn btn-info" name="actualizar" type="reset" value="Actualizar" onclick="location=''"<?php echo dirname($_SERVER['PHP_SELF']); ?>>
</td>
</tr>
</table>
</form>
</body>
</html>
<------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
<!-- Archivo: interfaz.php -->
<?php
// Se crea la clase "interfaz".
class interfaz {
// Se crea la función pública "mostrarInterfaz()" la cuál va a recibir como parámetro un arreglo.
public function mostrarInterfaz($listaEstados) {
// Se crea la interfaz del teatro.
$interfaz = '
<table class="table" border="4" align="center" style="width: 0px; text-align: center;">
<thead class="thead-dark">
<tr>
<th colspan="6">TEATRO</th>
</tr>
</thead>
<tbody>
<tr>
<th style="width: 115px;">Puesto ⇢<p>Fila ⇣</p></th>';
foreach ($listaEstados as $fila => $valor) {
$interfaz .= '<th style="width: 110px;">' . ($fila + 1) . '</th></thead>';
}
foreach ($listaEstados as $fila => $valor) {
$interfaz .= '<tr><th style="height: 60px; border-top: 0px;">' . ($fila + 1) . '</th>';
foreach ($listaEstados as $puesto => $valor) {
$interfaz .= '<td align="center" style="border-top: 0px;">' . $listaEstados[$fila][$puesto] . '</td>';
}
}
$interfaz .= '</tr></tr></tbody></table>';
// Se retorna la tabla creada con sus datos.
return $interfaz;
}
// Se crea la función pública "SeleccionePuestos()" la cuál va a recibir como parámetros: un arreglo y el puesto seleccionado.
public function SeleccionePuestos($listaEstados, $seleccionado) {
// Se crea la variable "$puestos" que va a contener un <option> con su respectivo texto.
$puestos = '<option value="">Seleccione ...</option>';
// Se recorre el arreglo "$listaEstados" con el bucle de PHP foreach.
foreach ($listaEstados as $puesto => $valor) {
// Se pregunta si la variable "$seleccionado" está definida o si existe.
if (isset($seleccionado)) {
// Se compara si la variable "$seleccionado" es igual al "$puesto" .
if ($seleccionado == $puesto) {
// Si es igual, la variable "$puestos" pasa a contener el atributo "selected" y el dato seleccionado.
$puestos .= '<option value="' . $seleccionado . '" selected>' . ($seleccionado + 1) . '</option>';
} else {
// Si no, entonces la variable "$puestos" pasa a tener normalmente los "<option>" con sus puestos.
$puestos .= '<option value="' . $puesto . '">' . ($puesto + 1) . '</option>';
}
} else {
/* Si no existe la variable "$seleccionado" es porque no se ha seleccionado ningún dato.
entonces se carga normalmente los "<option>" con sus puestos.
*/
$puestos .= '<option value="' . $puesto . '">' . ($puesto + 1) . '</option>';
}
}
// Se retorna la variable "$puestos".
return $puestos;
}
// Se crea la función pública "SeleccioneFilas()" la cuál va a recibir como parámetros: un arreglo y la fila seleccionada.
public function SeleccioneFilas($listaEstados, $seleccionado) {
// Se crea
...