Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SEMANA 6
Sebastian Palma
21-05-2022
DESARROLLO
De acuerdo con los conocimientos previos, describa que beneficios aporta el uso de sesiones en la
programación avanzada.
Cree una tienda virtual de relojes, no más de 5 artículos, haciendo uso de sesiones y carrito de
compra.
Se requiere:
El código debe incluirse en la entrega y además deberán presentarse las capturas de pantallas
respectivas. Esto con la finalidad de identificar los posibles errores que se presenten la ejecución
de lo solicitado.
INSTRUCCIONES: Las respuestas a las preguntas del control, deben ser una elaboración propia. Usted se
apoyará en los contenidos de la semana y también puede hacerlo en otros textos, pero siempre debe
identificar los autores y citar las fuentes. Recuerde agregar la bibliografía al final del control en formato
APA. Cuide su redacción y ortografía.
DESARROLLO DEL CONTROL: 1. De acuerdo con los conocimientos previos, describa que beneficios aporta
el uso de sesiones en la programación avanzada.
controlar el acceso de los usuarios a ciertas páginas, si este no está autenticado desde el inicio de esta,
Medir el tiempo de inactividad que tenga un usuario en una página (Sessión Time-Outs)
El uso de instrucciones de php que están obsoletas, motivada a un cambio de versión de php, a través
de E_DEPRECATED
Avisos en el tiempo de ejecución de la página, indicando que el script encontró un posible error
E_NOTICE
3- Cree una tienda virtual de relojes, no más de 5 artículos, haciendo uso de sesiones y carrito de
compra.
<?php
/*
* Este archivo muestra los productos en una tabla, inicilizando la session
de php. A a vez determina la inactividad de la misma
si pasan 6.
*/
session_start();
$_SESSION["usuario"] = "Rodrigo";
// Establecer tiempo de vida de la sesión en segundos
$inactividad = 600;
// Comprobar si $_SESSION["timeout"] está establecida
if(isset($_SESSION["timeout"])){
// Calcular el tiempo de vida de la sesión (TTL = Time To Live)
$sessionTTL = time() - $_SESSION["timeout"];
if($sessionTTL > $inactividad){
session_destroy();
header("Location: /logout.php");
}
}
// El siguiente key se crea cuando se inicia sesión
$_SESSION["timeout"] = time();
include "php/conexion.php";
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="bootstrap.min.css">
</head>
<body>
<head>
<div class="container">
<nav class="navbar navbar-default ">
<p class="navbar-text pull-right">
Conectado como <a href="<?php echo $_SESSION["usuario"];?>" class="navbarlink"><?
php echo $_SESSION["usuario"];?></a>
</p>
<div class="navbar-header">
<a class="navbar-brand" href="https://www.iacc.cl/">IACC</a>
</div>
<ul class="nav navbar-nav">
<li class="active"><a
href="http://localhost/rodrigo/libreria/productos.php">Productos</a></li>
<li><a href="http://localhost/rodrigo/libreria/carta.php">Carro de
Compras</a></li><li><a href="http://localhost/rodrigo/libreria/cierre.php">Cierre
de
Sesion</a></li>
</ul>
</div>
</nav>
</div>
</div>
</head >
<div class="container">
<div class="row">
<div class="col-md-12">
<h1>Productos</h1>
<a href="./cart.php" class="btn btn-warning">Ver Carrito</a>
<br><br>
<?php
/*
* Esta es la consula para obtener todos los productos de la base de datos.
*/
$products = $con->query("select * from product");
?>
<table class="table table-bordered">
<thead>
<th>Producto</th>
<th>Descripción</th>
<th>Precio</th>
<th></th>
</thead>
<?php
/*
* Apartir de aqui hacemos el recorrido de los productos obtenidos y los reflejamos
en una
tabla.
*/
while($r=$products->fetch_object()):?>
<tr>
<td><?php echo $r->nombre;?></td>
<td><?php echo $r->descripcion;?></td>
<td>$ <?php echo $r->precio; ?></td>
<td style="width:260px;">
<?php
$found = false;
if(isset($_SESSION["cart"])){ foreach ($_SESSION["cart"] as $c)
{ if($c["product_id"]==$r->id){ $found=true; break; }}}
?>
<?php if($found):?>
<a href="cart.php" class="btn btn-info">Agregado</a>
<?php else:?>
<form class="form-inline" method="post" action="./php/agregar.php">
<input type="hidden" name="product_id" value="<?php echo $r->id; ?>">
<div class="form-group">
<input type="number" name="q" value="1" style="width:100px;" min="1"
class="form-control" placeholder="Cantidad">
</div>
<button type="submit" class="btn btn-primary">Agregar al carrito</button>
</form>
<?php endif; ?>
</td>
</tr>
<?php endwhile; ?>
</table>
</div>
</div>
</div>
</body>
</html></html>
Carrito.
<?php
/*
* Este archio muestra los productos en una tabla.
*/
session_start();
// Establecer tiempo de vida de la sesión en segundos
$inactividad = 600;
// Comprobar si $_SESSION["timeout"] está establecida
if(isset($_SESSION["timeout"])){
// Calcular el tiempo de vida de la sesión (TTL = Time To Live)
$sessionTTL = time() - $_SESSION["timeout"];
if($sessionTTL > $inactividad){
session_destroy();
header("Location:/php/cierre.php");
}
}
// El siguiente key se crea cuando se inicia sesión
$_SESSION["timeout"] = time();
include "php/conexion.php";
?>
<!DOCTYPE html>
<html>
<head>
REFERENCIAS BIBLIOGRÁFICAS
Material de a poyo semana 6 IACC.
IACC. (2021). Habilidades para el aprendizaje en la modalidad online. Desarrollo de Habilidades para el
Aprendizaje. Semana 1
Wagensberg, J. (2017). Teoría de la creatividad: eclosión, gloria y miseria de las ideas. 1.ª edición:
Ministerio del Medio Ambiente (MMA). (s. f.). Planes de recuperación, conservación y gestión de
conservacion-y-gestion-de-especies/
Ejemplo de referencia: ley o decreto
Ley 19300 (2016). Aprueba Ley sobre Bases Generales del Medio Ambiente. Publicada en el Diario
de: https://www.leychile.cl/Navegar?idNorma=30667