Usuario:ManuelRomero/php/smarty/login

Probando el ejemplo
http://manuel.infenlaces.com/dwes/practicas/tienda/1.-%20TiendaLogin/login.php
 * Puedes ver esta parte del ejercicio ejecutándose en la web:

La lógica
Para este escenario necesitaremos los siguientes ficheros según vemos en la imagen
 * Generaremos el fichero login.php
 * Su función es autentificar al usuario de la aplicación web.
 * Todos los usuarios de la aplicación deberán autentificarse utilizando esta página antes de poder acceder al resto de páginas.
 * La siguiente imagen muestra un caso de uso de este escenario
 * Descripción de la imagen
 * 1) Login pedirá un usuario y contraseña para validar
 * 2) Al darle a validar, se validará el usuario contra la base de datos.
 * 3) Si no es ok mostrará un error y seguiremos en login.php, si es correcto iremos a productos.php


 * Descripción de la imagen


 * 1) El cliente invoca al fichero login.php
 * 2) Este método solicitará usuario y contraseña visualizando la plantilla login.tpl
 * 3) Cuando presionemos enviar validará contra la base de datos
 * 4) Si todo ok, mostrará la plantilla productos.tpl;
 * 5) Si no se ha validado, mostrará la plantilla login.tpl con el error encontrado
 * Para implementar esta parte del proyecto necesitaremos desarrollar los siguientes ficheros
 * 1) DB.php (clase)
 * 2) login.php (lógica)
 * 3) productos.php (lógica sin contenido)
 * 4) login.tpl (presentacion).

Desarrollando el código

 * DB.php
 * Esta es una clase que mantendrá todo el acceso a la base de datos
 * De momento solo necesito un método de validar el usuario
 * Este método tendrá que hacer 3 cosas:
 * 1) conectar a la base de datos,
 * 2) realizar una consulta,
 * 3) verificar que la consulta contenga un registro (OK! Usuario existe), o no (Usuario no registrado)
 * Seguramente otros métodos tengan que hacer estas acciones (conectar, ejecutar consultas, …), por lo que estas acciones será métodos privados de la clase.
 * Para poder pasar parámetros a la hora de ejecutar la consutla usaremos PDO en lugar de mysqli