This commit is contained in:
Marklogo 2024-03-04 13:49:12 +01:00
parent ac6c9c7d8a
commit cea9405670
28 changed files with 1511 additions and 54 deletions

View File

@ -0,0 +1,52 @@
<?php
// Sesiones en PHP
//Pasos uso de sesiones en PHP
/*
1. Identificación de sesión: se le asigna un identificador y se guarda en una cookie del navegador.
2. Almacenamiento de datos de sesión: variable superglobal $_SESSION se utiliza para acceder y modificar estos datos.
3. Inicio y cierre de sesión: Inicio de sesión session_start(). Esto inicializa o reanuda una sesión existente.
Una vez que la sesión ha comenzado, se pueden guardar y recuperar datos utilizando la superglobal $_SESSION.
Finalizar una sesión, se utiliza session_destroy(), elimina todos los datos y destruye la sesión.
4. Configuración de sesiones: configuración php.ini o mediante funciones como session_set_cookie_params().
*/
//Crear una Sesión
session_start(); // Lo primero que debe aparecer en la página
// Definir Variables
$_SESSION['nombre'] = 'Juan';
$_SESSION['apellido'] = 'Perez';
// Modificar variables
$_SESSION['apellido'] = 'Porto';
// Consultar la sesión
echo '<br>';
var_dump($_SESSION);
// Añadir variables
$_SESSION['apodo'] = 'Totoki';
// ID de sesión la indentifica
echo '<br>';
echo session_id();
echo '<br>';
var_dump($_SESSION);
// Destruir la sesión
//$_SESSION = []; // Borra las variables pero la sesión sigue activa
//session_destroy() // Finaliza la sesión y borra los datos
echo '<br>';
//var_dump($_SESSION);
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>INTRO8 PHP SESIONES</title>
</head>
<body>
<a href="INTRO8_PHP_SESIONES2.php">Continuar sesión</a>
<a href="destruir_sesion.php">Cerrar sesión</a>
</body>
</html>

View File

@ -0,0 +1,29 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>INTRO8 PHP SESIONES2</title>
</head>
<body>
<?php
//Conectar a una Sesión
session_start();
//Añadimos una variable
$_SESSION['edad'] = '30';
// Accedo a datos de la sesión
echo $_SESSION['nombre'];
echo '<br>';
echo $_SESSION['apellido'];
echo '<br>';
echo $_SESSION['apodo'];
echo '<br>';
echo $_SESSION['edad'];
?>
</body>
</html>

View File

@ -0,0 +1,34 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>INTRO8 PHP SESIONES3</title>
</head>
<body>
<?php
// Sesiones en PHP
// Nombrar la sesión o consultar su nombre , por defecto(PHPSESSID)
session_name("ejemplo1");// Se debe usar antes de iniciar la sesión
echo session_name();//Consultar nombre de sesión
//Parametros de la cookie de sesión
//session_set_cookie_params($lifetime, $path, $domain, $secure, $httponly);
session_set_cookie_params(
0,//Tiempo de vida de la cookie de sesión, definido en segundos.
'/',//Ruta en el servidor donde la cookie trabajará.
'www.php.net',//Dominio de la cookie, por ejemplo 'www.php.net'.
false,//Si es true la cookie sólo será enviada sobre conexiones seguras.
false // Si es false puede ser accesible por javascript.
);
session_start();//Inicio la sesión
// Para consultar los parametros de la cookie de sesión
var_dump(session_get_cookie_params());
//Borrar todos los valores de $_SESSION
//session_unset();
?>
</body>
</html>

View File

@ -0,0 +1,44 @@
<html>
<body>
<form method="post">
<p>
<input type="text" name="usuario" placeholder="Usuario">
</p>
<p>
<input type="password" name="contraseña" placeholder="Contraseña">
</p>
<p>
<input type="submit" value="Entrar">
</p>
</form>
<?php
// Comprobamos que nos llega los datos del formulario
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// Variables que teóricamente estarían en una base de datos o en un archivo
$usuarioBueno = 'flecha';
$contraseñaBuena = '5454';
// Variables del formulario
$usuario = isset($_POST['usuario']) ? $_POST['usuario'] : null;
$contraseña = isset($_POST['contraseña']) ? $_POST['contraseña'] : null;
// Comprobamos si los datos son correctos
if ($usuarioBueno === $usuario && $contraseñaBuena === $contraseña) {
// Si son correctos, creamos la sesión
session_start();
$_SESSION['usuario'] = $_POST['usuario'];
// Redireccionamos a la página personalizada
header('Location: perfil.php');
die();
} else {
// Si no son correctos, informamos al usuario
echo '<p style="color: red">El apodo o la contraseña es incorrecta.</p>';
}
}
?>
</body>
</html>

View File

@ -0,0 +1,9 @@
<?php
// Iniciamos las sesiones
session_start();
// Destruimos las sesiones
session_destroy();
// Llevamos a login.php
header('Location: login.php');
// Cortamos el script
die();

View File

@ -0,0 +1,18 @@
<?php
// Comprobamos si existe la sesión de apodo
session_start();
if (!isset($_SESSION['usuario'])) {
// En caso contrario devolvemos a la página login.php
header('Location: login.php');
die();
}
?>
<html>
<body>
<!-- Saludamos -->
<h1>Bienvenido <?php echo $_SESSION['usuario']; ?></h1>
<!-- Botón para cerrar la sesión -->
<a href="logout.php">Cerrar sesión</a>
</body>
</html>

View File

@ -1,12 +1,25 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="estilos.css" />
<title>Busqueda y eliminacion de registros</title>
</head>
<body>
<?php
session_start();
$nombre_usuario = $_SESSION['nombre'];
$tipo_usuario = $_SESSION['tipo'];
echo "<div>
<h2>Bienvenido $nombre_usuario </h2>
<a href=\"logout.php\">Cerrar session</a>
</div>"
?>
<form method="post">
<p>*Término a buscar: </p>
<p><input type="text" name="termBusqueda" id="termBusqueda" size="30" placeholder="Introduzca la palabra de Busqueda" required></p>
@ -14,18 +27,19 @@
</form>
<br>
<?php
<?php
include_once('caracteres.php');
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['buscar'])) {
$termBusqueda = isset($_POST['termBusqueda'])?$_POST['termBusqueda']:'';
$termBusqueda!=="" ? busqueda($termBusqueda) : null;
$termBusqueda = isset($_POST['termBusqueda']) ? $_POST['termBusqueda'] : '';
$termBusqueda !== "" ? busqueda($termBusqueda) : null;
unset($_POST);
}
function busqueda($termBusqueda){
$termBusqueda=eliminar_tildes(strtolower($termBusqueda));
function busqueda($termBusqueda)
{
$termBusqueda = eliminar_tildes(strtolower($termBusqueda));
$nombre_archivo = "listado_reservas.txt";
$registros=[];
$registros = [];
$archivo = fopen($nombre_archivo, 'r');
while (($linea = fgets($archivo)) !== false) {
@ -35,7 +49,7 @@
}
fclose($archivo);
if (count($registros) > 0){
if (count($registros) > 0) {
echo "<table>
<tbody>
<thead>
@ -65,25 +79,26 @@
}
}
function genButtonDel($idReserva){
function genButtonDel($idReserva)
{
return "<form method=\"POST\" style=\"border: none; padding:0.2rem; min-width: auto; margin:0\">
<input type=\"hidden\" name=\"idReserva\" value=\"$idReserva\" style=\"border: none; padding:0; min-width: auto; margin:0\">
<input type=\"submit\" name=\"borrar\" value=\"Eliminar\" style=\"border: none; background-color:#5e1622; cursor: pointer; padding:0.2rem 0.4rem; min-width: auto; margin:0\">
</form>";
}
?>
?>
<form method="post">
<form method="post">
<p>*ID de reserva para borrar: </p>
<input type="text" name="idReserva" value="" id="idReserva" size="15" minlength="15" maxlength="15" placeholder="Id de reserva" />
<input type="submit" name="borrar" value="Borrar reserva de alquiler">
</form>
<br>
</form>
<br>
<?php
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['borrar'])) {
$idReserva = isset($_POST['idReserva'])?$_POST['idReserva']:'';
if ($idReserva!==""){
$idReserva = isset($_POST['idReserva']) ? $_POST['idReserva'] : '';
if ($idReserva !== "") {
echo "<div>";
echo "<h4>Actuaciones sobre el registro: $idReserva</h4> <br>";
echo eliminaDeLista($idReserva) ?
@ -100,40 +115,42 @@
unset($_POST);
}
function eliminaDeLista($idReserva){
function eliminaDeLista($idReserva)
{
$nombre_archivo = "listado_reservas.txt";
$flagEncontrado=false;
$registros=[];
$flagEncontrado = false;
$registros = [];
$archivo = fopen($nombre_archivo, 'r');
while (($linea = fgets($archivo)) !== false) {
if (strpos($linea, $idReserva) === false) {
$registros[] = $linea;
}else{
$flagEncontrado=true;
} else {
$flagEncontrado = true;
}
}
fclose($archivo);
return ($flagEncontrado && file_put_contents($nombre_archivo,$registros));
return ($flagEncontrado && file_put_contents($nombre_archivo, $registros));
}
function eliminaRegistro($idReserva){
$dir_reservas ="reservas/";
function eliminaRegistro($idReserva)
{
$dir_reservas = "reservas/";
$nombre_archivo = "$idReserva.txt";
return file_exists($dir_reservas.$nombre_archivo) ?
unlink($dir_reservas.$nombre_archivo) :
return file_exists($dir_reservas . $nombre_archivo) ?
unlink($dir_reservas . $nombre_archivo) :
false;
}
function eliminaUpload($idReserva){
$dir_uploads= "dni_clientes/";
$file=glob($dir_uploads . "*". $idReserva ."*");
function eliminaUpload($idReserva)
{
$dir_uploads = "dni_clientes/";
$file = glob($dir_uploads . "*" . $idReserva . "*");
return (count($file) > 0) ? unlink($file[0]) : false;
}
?>
?>
</body>
</html>

View File

@ -0,0 +1,208 @@
<!Doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Reservas hotel</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
<script>
// Función obtener() que realizará la captación de datos,los cálculos y la escritura del mensaje de info
function obtener() {
// Declaro y obtengo el valor de las variables
//Calcular periodo de la estancia (noches)
const inicio = document.getElementById("entradaH").valueAsNumber;
const fin = document.getElementById("salida").valueAsNumber;
const dif = fin - inicio;
const noches = Math.ceil(dif / (1000 * 60 * 60 * 24));
document.getElementById("noches").value = noches;
const habitacion = document.getElementById("habitacion").value;
const regimen = document.getElementById("regimen").value;
const spa = document.getElementById("spa").value;
const guia = document.getElementById("guia").value;
const nombreCliente = document.getElementById("nombre").value;
//Cáculo extras (spa y guia)
let spaT;
if (spa > 5) {
spaT = spa * 20;
} else {
spaT = spa * 30;
}
let guiaT;
if (guia > 7) {
guiaT = guia * 40;
} else {
guiaT = guia * 50;
}
// Tipo habitación
let hotel;
if (habitacion === "simple") {
hotel = 50;
}
if (habitacion === "doble") {
hotel = 80;
}
if (habitacion === "triple") {
hotel = 120;
}
if (habitacion === "suite") {
hotel = 150;
}
//Tipo de regimen
let comidas;
if (regimen === "desayuno") {
comidas = 50;
}
if (regimen === "mediapension") {
comidas = 80;
}
if (regimen === "pensioncompleta") {
comidas = 120;
}
if (regimen === "todoincluido") {
comidas = 150;
}
// Gastos estancia hotel+comidas
const hotelT = hotel * noches;
const regimenT = comidas * noches;
const estancia = hotelT + regimenT;
// Descuento por larga estancia
let estanciaDescuento;
if (noches <= 4) {
estanciaDescuento = estancia;
} else if (noches >= 5 && noches <= 10) {
estanciaDescuento = estancia * 0.85;
} else if (noches >= 11) {
estanciaDescuento = estancia * 0.75;
}
//Envío el precio total sin IVA al formulario
document.getElementById("estancia").value = estanciaDescuento;
//Coste total con extras
const total = estanciaDescuento + spaT + guiaT;
const totalI = (total * 1.21).toFixed(2);
// Envío el precio con IVA al formulario
document.getElementById("total").value = totalI;
// Precio de anulación
const precioAnulacion = (total * 0.2).toFixed(2);
// Calcular días que faltan y fecha de regreso
const hoy = new Date().getTime(); // Fecha de la reserva
const entrada = document.getElementById("entradaH").valueAsNumber;
const dif2 = entrada - hoy;
const diasFaltan = dif2 / (1000 * 60 * 60 * 24); // Días que faltan
const regresoF = new Date(fin); // Obtener en UTC
const regresoP = regresoF.toLocaleDateString(); //Pasar fecha a formato corto dd/mm/xxxx
const anulacion = entrada - (3 * 24 * 60 * 60 * 1000); //Fecha de anulación
const anulacionF = new Date(anulacion);
const anulacionP = anulacionF.toLocaleDateString();
//Mensaje de información
const frase =
"Hola " + nombreCliente + "\n" +
"Faltan " + (Math.ceil(diasFaltan)) + " días " + "para tu viaje" + "\n" +
"Tu fecha de regreso es el " + regresoP + "\n" +
"Puedes anular tu reserva hasta el día " + anulacionP + "\n" +
"El coste de la anulación será de " + precioAnulacion + " euros";
//Enviar mensaje al formulario
document.getElementById("info").value = frase;
}
</script>
</head>
<body>
<?php
session_start();
$nombre_usuario = $_SESSION['nombre'];
$tipo_usuario = $_SESSION['tipo'];
echo "<div>
<h2>Bienvenido $nombre_usuario </h2>
<a href=\"logout.php\">Cerrar session</a>
</div>"
?>
<div id="container">
<form action="recibe_formulario_hotel.php" method="post" enctype="multipart/form-data">
<h1>Reserve su habitación</h1>
<fieldset>
<legend>Datos de la reserva</legend>
<p><label for="entradaH">Elige la fecha de entrada</label> <input type="date" id="entradaH" name="entrada" value="2024-03-01">
<p><label for="salida">Elige la fecha de salida</label> <input type="date" id="salida" name="salida" value="2024-03-10"></p>
<p><label for="habitacion">Seleccione el tipo de habitación</label>
<!-- Lista de selección -->
<select name="habitacion" id="habitacion">
<option value="simple">Simple</option>
<option value="doble">Doble</option>
<option value="triple">Triple</option>
<option value="suite">Suite</option>
</select>
</p>
<p><label for="regimen">Seleccione el regimen de alojamiento</label>
<!-- Lista de selección -->
<select name="regimen" id="regimen">
<option value="desayuno">Desayuno</option>
<option value="mediapension">Media pensión</option>
<option value="pensioncompleta">Pensión Completa</option>
<option value="todoincluido">Todo Incluido</option>
</select>
</p>
<p><label for="estancia">Coste de la estancia (Habitación + Comidas)</label> <input type="text" name="estancia" id="estancia"></p>
<p><label for="spa">Acceso al Spa, elija cuantos días</label> <input type="number" name="spa" id="spa" value="0" size="3"></p>
<p><label for="guia">Servicio de guía turístico, elija cuantos días </label><input type="number" name="guia" id="guia" value="0" size="3"></p>
<p><label for="total">Coste total con IVA incluido </label><input type="text" name="total" id="total"></p>
</fieldset>
<fieldset>
<legend>Datos personales</legend>
<p><label for="nombre">*Nombre: </label><input type="text" name="nombre" id="nombre" placeholder="Nombre y Apellidos" required value="Marcos Lopez Gomez"></p>
<p><label for="mail">*Correo electrónico: </label><input type="email" name="email" id="mail" placeholder="Escribe tu correo" required value="marklogo@gmail.com"></p>
<p><label for="telefono">*Teléfono:</label> <input type="tel" id="telefono" name="telefono" required value="649348375"></p>
<p>Check-in online (opcional):</p>
<p><label for="dni">DNI:</label> <input type="text" id="dni" name="dni" value="33340763D"></p>
<p><label for="adjuntos">Adjunte fotocopia de DNI </label><input type="file" name="dnifile" id="dnifile" accept=".pdf,.jpg"></p>
<div id="flex">
<div>
<input type="button" value="Calcular coste total" onclick="obtener()">
<br><input type="reset" name="limpiar" value="Borrar" />
<br><input type="submit" value="Enviar la reserva">
<input id="noches" name="noches" type="hidden" value="noches">
</div>
<textarea name="info" id="info">Información de su viaje</textarea>
</div>
</fieldset>
</form>
</div>
<br>
</body>
</html>

View File

@ -0,0 +1,2 @@
1709555328_6286/_/Marcos Lopez Gomez/_/marklogo@gmail.com/_/649348375/_/2024-03-08/_/2024-03-21/_/04-03-2024 12:28:48/_/13
1709555366_8127/_/Marcos Lopez Gomez/_/marklogo1@gmail.com/_/649348375/_/2024-03-05/_/2024-03-10/_/04-03-2024 12:29:26/_/5

View File

@ -0,0 +1,87 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="estilos.css" />
<title>Login</title>
</head>
<body>
<div>
<h2>Login de usuario</h2>
<form method="post">
<p style="display:flex; flex-direction: column; ">
<label for="email">Usuario</label>
<input type="usuario" name="usuario" placeholder="Usuario" required>
</p>
<p style="display:flex; flex-direction: column; ">
<label for="password">Contraseña</label>
<input type="password" name="password" placeholder="Password" required>
</p>
<p>
<input type="submit" value="Entrar">
</p>
</form>
</div>
<div>
<a href="./registro.php?tipo=cliente">Registrarse como cliente</a> <br>
<a href="./registro.php?tipo=hotel">Registrarse como personal del hotel</a>
</div>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Validar si se han enviado los datos del formulario
if (isset($_POST["usuario"]) && isset($_POST["password"])) {
$usuario = trim($_POST["usuario"]);
$password = trim($_POST["password"]);
// Obtener datos de usuarios registrados
$archivo = "usuarios.txt";
if (file_exists($archivo)) {
$usuarios = file_get_contents($archivo);
$lineas = explode("\n", $usuarios);
$credenciales_correctas = false;
$nombre_usuario = "";
$email_usuario = "";
$tipo_usuario = "";
foreach ($lineas as $linea) {
$datos = explode(":", $linea);
if (isset($datos[1]) && ($datos[1] == $usuario && password_verify($password, $datos[2]))) {
$credenciales_correctas = true;
$nombre_usuario = $datos[0];
$email_usuario = $datos[1];
$tipo_usuario = $datos[3];
break;
}
}
if ($credenciales_correctas) {
session_start();
$_SESSION['nombre'] = $nombre_usuario;
$_SESSION['email'] = $email_usuario;
$_SESSION['tipo'] = $tipo_usuario;
switch ($tipo_usuario) {
case 'hotel':
header('Location: busqueda.php');
break;
case 'cliente':
header('Location: perfil_cliente.php');
break;
}
exit();
} else {
echo "<div> Credenciales incorrectas. Por favor, inténtalo de nuevo. </div>";
}
} else {
echo "<div> No hay usuarios registrados aún. </div>";
}
} else {
echo "<div> Por favor, complete todos los campos. </div>";
}
}
?>
</body>
</html>

View File

@ -0,0 +1,6 @@
<?php
session_start();
session_destroy();
header('Location: login.php');
exit();
?>

View File

@ -0,0 +1,77 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="estilos.css" />
<title>Perfil de cliente</title>
</head>
<body>
<?php
$nombre_usuario = $_SESSION['nombre'];
$tipo_usuario = $_SESSION['tipo'];
$email_usuario = $_SESSION['email'];
echo "<div>
<h2>Bienvenido $nombre_usuario </h2>
<a href=\"logout.php\">Cerrar session</a>
</div> <br>";
busqueda($email_usuario);
echo "<div>
<a href=\"formulario_hotel.php\">Registrar reserva</a>
</div>";
function busqueda($termBusqueda)
{
include_once('caracteres.php');
$termBusqueda = eliminar_tildes(strtolower($termBusqueda));
$nombre_archivo = "listado_reservas.txt";
$registros = [];
$archivo = file_exists($nombre_archivo) ? fopen($nombre_archivo, 'r') : false;
if ($archivo !== false) {
while (($linea = fgets($archivo)) !== false) {
if (strpos(eliminar_tildes(strtolower($linea)), $termBusqueda) !== false) {
$registros[] = $linea;
}
}
fclose($archivo);
}
if (count($registros) > 0) {
echo "<table>
<tbody>
<thead>
<th>Id Reserva</th>
<th>Nombre</th>
<th>Email</th>
<th> Telefono</th>
<th>Fecha de entrada</th>
<th>Fecha de salida</th>
<th>Fecha de registro</th>
<th> de noches</th>
</thead>";
foreach ($registros as $registro) {
$campos = explode("/_/", $registro);
echo "<tr>";
foreach ($campos as $campo) {
echo "<td> $campo </td>";
}
echo "</tr>";
}
echo "</tbody>";
echo "</table>";
} else {
echo "<div><h4> No se han encontrado registros con los terminos indicados </h4></div>";
}
}
?>
</body>
</html>

View File

@ -7,8 +7,18 @@
<title>Reservas Hotel!!!</title>
</head>
<body>
<?php
session_start();
$nombre_usuario = $_SESSION['nombre'];
$tipo_usuario = $_SESSION['tipo'];
echo "<div>
<h2>Bienvenido $nombre_usuario </h2>
<a href=\"logout.php\">Cerrar session</a>
</div>"
?>
<div>
<?php
// Validar el método de solicitud HTTP
if ($_SERVER["REQUEST_METHOD"] == "POST") {

View File

@ -0,0 +1,94 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="estilos.css" />
<title>Registro de personal de hotel</title>
</head>
<?php
if ($_SERVER["REQUEST_METHOD"] == "GET") {
$tipo_usuario = "";
if (!(isset($_GET["tipo"]) && ($_GET["tipo"] === 'cliente' || $_GET["tipo"] === 'hotel'))) {
header('Location: login.php');
}
$tipo_usuario = $_GET["tipo"];
}
?>
<body>
<div>
<h2>Registro
<?php
echo $tipo_usuario === 'hotel' ? "de personal del hotel" : "de clientes";
?>
</h2>
<form method="post">
<p style="display:flex; flex-direction: column; ">
<label for="nombre">Nombre:</label>
<input type="nombre" name="nombre" placeholder="Nombre" required>
</p>
<p style="display:flex; flex-direction: column; ">
<label for="email">Correo electrónico:</label>
<input type="email" name="email" placeholder="Email" required>
</p>
<p style="display:flex; flex-direction: column; ">
<label for="password">Contraseña:</label>
<input type="password" name="password" placeholder="Password" required>
</p>
<p>
<input type="submit" value="Registrar">
</p>
</form>
</div>
</body>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Validar si se han enviado los datos del formulario
if (isset($_POST["email"]) && isset($_POST["password"])) {
$nombre = trim($_POST["nombre"]);
$email = trim($_POST["email"]);
$password = password_hash(trim($_POST["password"]),PASSWORD_DEFAULT);
$tipo_usuario= trim($_GET["tipo"]);
// Validar si el archivo de almacenamiento existe, si no, crearlo
$archivo = "usuarios.txt";
if (!file_exists($archivo)) {
fopen($archivo, "w");
}
// Validar si el email ya está registrado
$usuarios = file_get_contents($archivo);
$lineas = explode("\n", $usuarios);
$email_existe = false;
foreach ($lineas as $linea) {
$datos = explode(":", $linea);
if (isset($datos[1]) && ($datos[1] == $email)) {
$email_existe = true;
break;
}
}
// Si el email no está registrado, almacenarlo en el archivo
if (!$email_existe) {
$nueva_linea = $nombre . ":" . $email . ":" . $password . ":" . $tipo_usuario . "\n";
file_put_contents($archivo, $nueva_linea, FILE_APPEND | LOCK_EX);
header('Location: login.php');
exit();
} else {
echo "Este email ya está registrado.";
}
} else {
echo "Por favor, complete todos los campos.";
}
}
?>
</html>

View File

@ -0,0 +1,14 @@
Id reserva: 1709555328_6286
Fecha de reserva: 04-03-2024 12:28:48
Fecha de entrada: 2024-03-08
Fecha de salida: 2024-03-21
Tipo de habitación: simple
Regimen de alojamiento: desayuno
Días Spa: 0
Días Guia: 0
Duración estancia: 13
Coste Total: 1179.75
Nombre: Marcos Lopez Gomez
Correo electrónico: marklogo@gmail.com
Teléfono: 649348375
DNI: 33340763D

View File

@ -0,0 +1,14 @@
Id reserva: 1709555366_8127
Fecha de reserva: 04-03-2024 12:29:26
Fecha de entrada: 2024-03-05
Fecha de salida: 2024-03-10
Tipo de habitación: simple
Regimen de alojamiento: desayuno
Días Spa: 0
Días Guia: 0
Duración estancia: 5
Coste Total: 514.25
Nombre: Marcos Lopez Gomez
Correo electrónico: marklogo1@gmail.com
Teléfono: 649348375
DNI: 33340763D

View File

@ -0,0 +1,2 @@
Pablo López Gómez:marklogo@gmail.com:$2y$10$NDc/iJcOFm9EvP3UXKI0PumtcfUe.2VfxfrXR2OXOBScw8pDu.IKa:hotel
Marcos Lopez Gomez:marklogo1@gmail.com:$2y$10$yRaUcaYDGod1zRRLizbfi..hEPa8kkZre7Xk83c1pe/W/wXXrj6jW:cliente

View File

@ -0,0 +1,140 @@
<?php
// Comprobamos si existe la sesión de apodo
session_start();
if (!isset($_SESSION['usuario'])) {
// En caso contrario devolvemos a la página login.php
header('Location: login_usuarios.php');
die();
}
?>
<!Doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Buscador de reservas</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
</head>
<body>
<div>
<!-- Saludamos -->
<h1>Bienvenido <?php echo $_SESSION['usuario']; ?></h1>
<!-- Botón para cerrar la sesión -->
<a href="logout.php">Cerrar sesión</a>
<form method="post">
<p>*Término a buscar: </p><p><input type="text" name="busqueda" id="busqueda" size="30" placeholder="Introduzca la palabra de busqueda" required></p>
<input type="submit" name="buscar" value="Buscar" >
</form></div>
<?php
//Suponiendo que el archivo caracteres.php está en la misma carpeta:
include('caracteres.php');
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['buscar'])) {
// Busca una palabra
$busqueda=isset($_REQUEST['busqueda'])? $_REQUEST['busqueda']: "" ;
//Abrir el archivo
$archivo = fopen('listado_reservas.txt', 'r');
//Leer el archivo
if (!$archivo) { echo("Error abriendo archivo"); }
// Abro la tabla
echo '<br>';
echo '<table border="2">';
echo "<tr><th>Id Reserva</th><th>Nombre</th><th>Correo</th><th>Teléfono</th><th>Entrada</th><th>Salida</th><th>Fecha reserva</th><th>Duración</th></tr>";
//Busco la coincidencia
while (($linea = fgets($archivo)) != false) {
if(strpos(eliminar_tildes(strtolower($linea)), eliminar_tildes(strtolower($busqueda))) !== false){
// Mostrar la tabla con array
$arrayLinea=explode('/_/', $linea);
//foreach ($arrayLinea as $dato) {
// echo "<td>$dato</td>";
//}
echo "<tr><td>$arrayLinea[0]</td><td>$arrayLinea[1]</td><td>$arrayLinea[2]</td><td>$arrayLinea[3]</td><td>$arrayLinea[4]</td><td>$arrayLinea[5]</td><td>$arrayLinea[6]</td><td>$arrayLinea[7]</td></tr>";
}
}
// Cierrro la tabla
echo "</table>";
//cerrar el archivo
fclose($archivo);
// Vacio los datos de POST
unset($_POST);
}
?>
<br>
<div><form method="post">
<p>*ID de alquiler para borrar: </p><input type="text" name="Id_borrar" value="" id="Id_borrar" size="15" minlength="15" maxlength="15" placeholder="Id Alquiler"/>
<input type="submit" name="borrar" value="Borrar reserva de alquiler" >
</form></div>
<?php
// Borrar reservas de alquiler
$listaReservas = "listado_reservas.txt";
$temporal = "temp.txt";
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['borrar']) && isset($_POST['Id_borrar'])) {
$borrado = $_POST['Id_borrar'];
$accesoLista = fopen($listaReservas, 'r');
$accesoTemporal = fopen($temporal, 'w');
// Buscar la reserva por ID
while (($linea = fgets($accesoLista)) !== false) {
// Obtener el ID de reserva de la línea actual
$arrayLinea = explode('/_/', $linea);
$id_reserva = $arrayLinea[0];
// Si el ID de reserva no coincide
if(trim($id_reserva) !== trim($borrado)) {
fwrite($accesoTemporal, $linea);
}
}
fclose($accesoLista);
fclose($accesoTemporal);
// Borrar listado y renombrar el temporal
unlink($listaReservas);
rename($temporal, $listaReservas);
// Borrar ficha de reserva individual
$ficha_individual = "reservas/reserva_" .$borrado.".txt";
if (file_exists($ficha_individual)) {
if (unlink("reservas/reserva_" .$borrado.".txt") !== false) {
echo "<div><p>La ficha de reserva se ha borrado</p></div>";
}
} else {
echo "<div><p>La ficha de reserva no se ha encontrado</p></div>";
}
// Borrar DNI con glob()
$dni_archivos = glob("dni_clientes/*_{$borrado}_*");
foreach ($dni_archivos as $dni_aborrar) {
if (unlink($dni_aborrar)) {
echo '<div><p>El archivo ' . $dni_aborrar . ' fue eliminado exitosamente.</p></div>';
} else {
echo '<div><p>Ocurrió un error al intentar eliminar el archivo ' . $dni_aborrar . '.</p></div>';
}
}
// Vacio los datos de POST
unset($_POST);
}
?>
</body>
</html>

View File

@ -1,4 +1,14 @@
<?php
// Comprobamos si existe la sesión
session_start();
if (!isset($_SESSION['usuario'])) {
// En caso contrario devolvemos a la página login.php
header('Location: login_usuarios.php');
die();
}
?>
<!Doctype html>
<html>
<head>
@ -136,14 +146,18 @@
</head>
<body>
<div><!-- Saludamos -->
<h1>Hola <?php echo $_SESSION['usuario']; ?> puede realizar su reserva</h1>
<!-- Botón para cerrar la sesión -->
<a href="logout.php">Cerrar sesión</a></div>
<div id="container">
<form action="recibe_formulario_hotel.php" method="post" enctype="multipart/form-data">
<h1>Reserve su habitación</h1>
<h2>Reserve su habitación</h2>
<fieldset>
<legend>Datos de la reserva</legend>
<p><label for="entradaH">Elige la fecha de entrada</label> <input type="date" id="entradaH" name="entrada" value="2024-03-01">
<p><label for="salida">Elige la fecha de salida</label> <input type="date" id="salida" name="salida" value="2024-03-10"></p>
<p><label for="entradaH">Elige la fecha de entrada</label> <input type="date" id="entradaH" name="entrada">
<p><label for="salida">Elige la fecha de salida</label> <input type="date" id="salida" name="salida"></p>
<p><label for="habitacion">Seleccione el tipo de habitación</label>
<!-- Lista de selección -->
<select name="habitacion" id="habitacion">
@ -169,11 +183,11 @@
</fieldset>
<fieldset>
<legend>Datos personales</legend>
<p><label for="nombre">*Nombre: </label><input type="text" name="nombre" id="nombre" placeholder="Nombre y Apellidos" required value = "Marcos Lopez Gomez"></p>
<p><label for="mail">*Correo electrónico: </label><input type="email" name="email" id="mail" placeholder="Escribe tu correo" required value = "marklogo@gmail.com"></p>
<p><label for="telefono">*Teléfono:</label> <input type="tel" id="telefono" name="telefono" required value="649348375" ></p>
<p><label for="nombre">*Nombre: </label><input type="text" name="nombre" id="nombre" placeholder="Nombre y Apellidos" required></p>
<p><label for="mail">*Correo electrónico: </label><input type="email" name="email" id="mail" placeholder="Escribe tu correo" required></p>
<p><label for="telefono">*Teléfono:</label> <input type="tel" id="telefono" name="telefono" required></p>
<p>Check-in online (opcional):</p>
<p><label for="dni">DNI:</label> <input type="text" id="dni" name="dni" value="33340763D" ></p>
<p><label for="dni">DNI:</label> <input type="text" id="dni" name="dni" ></p>
<p><label for="adjuntos">Adjunte fotocopia de DNI </label><input type="file" name="dnifile" id="dnifile" accept=".pdf,.jpg" ></p>
<div id="flex">
<div>
@ -189,8 +203,6 @@
</form>
</div>
<br>
</body>

View File

@ -0,0 +1,93 @@
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Login de acceso</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
<body>
<div><h2>Login de Usuarios</h2>
<form method="post">
<p>
<label for="usuario">Usuario:</label>
<input type="text" id="usuario" name="usuario" placeholder="Usuario">
</p>
<p>
<label for="contraseña">Contraseña:</label>
<input type="password" id="contraseña" name="contraseña" placeholder="Contraseña">
</p>
<p>
<input type="submit" value="Entrar">
</p>
</form></div>
<div>
<p><a href="registro_usuarios_cliente.php">Registarse como cliente</a></p>
<p><a href="registro_usuarios_hotel.php">Registarse como personal del hotel</a></p>
</div>
<?php
// Verificar si se ha enviado el formulario
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Obtener los datos del formulario
$usuario = $_POST['usuario'];
$contraseña = $_POST['contraseña'];
// Archivo de usuarios
$archivo = "usuarios.txt";
// Verificar si el archivo existe
if (file_exists($archivo)) {
// Abrir el archivo en modo de lectura
$conexion = fopen($archivo, "r");
// Variable para usuario
$usuario_encontrado = false;
$nombre_usuario;
$acceso_usuario;
// Leer el archivo línea por línea
while (($linea = fgets($conexion)) !== false) {
// Separar el nombre de usuario y la contraseña de cada línea
list($usuario_registrado, $contraseña_registrada, $nombre_registrado ,$acceso_registrado) = explode(":", trim($linea));
// Comparar los datos
if ($usuario === $usuario_registrado && password_verify($contraseña, $contraseña_registrada)) {
$usuario_encontrado = true;
$nombre_usuario=$nombre_registrado;
$acceso_usuario=$acceso_registrado;
$correo_usuario=$usuario_registrado;
break;
}
}
// Cerrar el archivo
fclose($conexion);
// Verificar si se encontró
if ($usuario_encontrado) {
// Si los datos son válidos, iniciar sesión y redirigir al usuario
session_start();
$_SESSION['usuario'] = $nombre_usuario;
$_SESSION['correo'] = $correo_usuario;
if ($acceso_usuario === "cliente") {
header('Location: perfil_cliente.php'); // Redireccionar a la página de cliente
exit();
}
if ($acceso_usuario === "hotel") {
header('Location: buscador_reservas.php'); // Redireccionar a la página de gestión
exit();
}
} else {
// Si los datos no son válidos, mostrar un mensaje de error
echo '<p style="color: red">El nombre de usuario o la contraseña son incorrectos.</p>';
}
}
}
?>
</body>
</html>

View File

@ -0,0 +1,93 @@
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Login de acceso</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
<body>
<div><h2>Login de Usuarios</h2>
<form method="post">
<p>
<label for="usuario">Usuario:</label>
<input type="text" id="usuario" name="usuario" placeholder="Usuario">
</p>
<p>
<label for="contraseña">Contraseña:</label>
<input type="password" id="contraseña" name="contraseña" placeholder="Contraseña">
</p>
<p>
<input type="submit" value="Entrar">
</p>
</form></div>
<div>
<p><a href="registro_usuarios_comun.php?acceso=cliente">Registarse como cliente</a></p>
<p><a href="registro_usuarios_comun.php?acceso=hotel">Registarse como personal del hotel</a></p>
</div>
<?php
// Verificar si se ha enviado el formulario
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Obtener los datos del formulario
$usuario = $_POST['usuario'];
$contraseña = $_POST['contraseña'];
// Archivo de usuarios
$archivo = "usuarios.txt";
// Verificar si el archivo existe
if (file_exists($archivo)) {
// Abrir el archivo en modo de lectura
$conexion = fopen($archivo, "r");
// Variable para usuario
$usuario_encontrado = false;
$nombre_usuario;
$acceso_usuario;
// Leer el archivo línea por línea
while (($linea = fgets($conexion)) !== false) {
// Separar el nombre de usuario y la contraseña de cada línea
list($usuario_registrado, $contraseña_registrada, $nombre_registrado ,$acceso_registrado) = explode(":", trim($linea));
// Comparar los datos
if ($usuario === $usuario_registrado && password_verify($contraseña, $contraseña_registrada)) {
$usuario_encontrado = true;
$nombre_usuario=$nombre_registrado;
$acceso_usuario=$acceso_registrado;
$correo_usuario=$usuario_registrado;
break;
}
}
// Cerrar el archivo
fclose($conexion);
// Verificar si se encontró
if ($usuario_encontrado) {
// Si los datos son válidos, iniciar sesión y redirigir al usuario
session_start();
$_SESSION['usuario'] = $nombre_usuario;
$_SESSION['correo'] = $correo_usuario;
if ($acceso_usuario === "cliente") {
header('Location: perfil_cliente.php'); // Redireccionar a la página de cliente
exit();
}
if ($acceso_usuario === "hotel") {
header('Location: buscador_reservas.php'); // Redireccionar a la página de gestión
exit();
}
} else {
// Si los datos no son válidos, mostrar un mensaje de error
echo '<p style="color: red">El nombre de usuario o la contraseña son incorrectos.</p>';
}
}
}
?>
</body>
</html>

View File

@ -0,0 +1,9 @@
<?php
// Conectar con la sesión
session_start();
// Destruimos las sesiones
session_destroy();
// Llevamos a login.php
header('Location: login_usuarios.php');
// Cortamos el script
exit();

View File

@ -0,0 +1,71 @@
<?php
// Comprobamos si existe la sesión
session_start();
if (!isset($_SESSION['usuario'])) {
// En caso contrario devolvemos a la página login.php
header('Location: login_usuarios.php');
die();
}
?>
<!Doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Reservas hotel</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
</head>
<body>
<div><!-- Saludamos -->
<h1>Bienvenido <?php echo $_SESSION['usuario']; ?></h1>
<!-- Botón para cerrar la sesión -->
<a href="logout.php">Cerrar sesión</a></div>
<div><h2>Estas son sus reservas:</h2>
<?php
//Suponiendo que el archivo caracteres.php está en la misma carpeta:
include('caracteres.php');
//Abrir el archivo
$archivo = fopen('listado_reservas.txt', 'r');
//Leer el archivo
if (!$archivo) { echo("Error abriendo archivo"); }
// Abro la tabla
echo '<br>';
echo '<table border="2">';
echo "<tr><th>Id Reserva</th><th>Nombre</th><th>Correo</th><th>Teléfono</th><th>Entrada</th><th>Salida</th><th>Fecha reserva</th><th>Duración</th></tr>";
//Busco la coincidencia
$contador=0;
while (($linea = fgets($archivo)) != false) {
if(strpos(eliminar_tildes(strtolower($linea)), eliminar_tildes(strtolower($_SESSION['correo']))) !== false){
// Mostrar la tabla con array
$arrayLinea=explode('/_/', $linea);
//foreach ($arrayLinea as $dato) {
// echo "<td>$dato</td>";
//}
echo "<tr><td>$arrayLinea[0]</td><td>$arrayLinea[1]</td><td>$arrayLinea[2]</td><td>$arrayLinea[3]</td><td>$arrayLinea[4]</td><td>$arrayLinea[5]</td><td>$arrayLinea[6]</td><td>$arrayLinea[7]</td></tr>";
$contador++;
}
}
// Cierrro la tabla
echo "</table>";
if ($contador == 0) {
echo "<p>Usted no tiene reservas</p>";
}
//cerrar el archivo
fclose($archivo);
?>
</div>
<div><p><a href="formulario_hotel.php">Realize su reserva</a></p></div>
</body>
</html>

View File

@ -0,0 +1,144 @@
<?php
// Comprobamos si existe la sesión
session_start();
if (!isset($_SESSION['usuario'])) {
// En caso contrario devolvemos a la página login.php
header('Location: login_usuarios.php');
die();
}
?>
<!Doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Reservas hotel</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
</head>
<body>
<div><!-- Saludamos -->
<h1>Usuario: <?php echo $_SESSION['usuario']; ?></h1>
<!-- Botón para cerrar la sesión -->
<a href="logout.php">Cerrar sesión</a></div>
<div id="container">
<?php
// Verificar si se recibieron los datos del formulario
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Obtener los datos del formulario
$entrada = $_POST["entrada"];
$salida = $_POST["salida"];
$habitacion = $_POST["habitacion"];
$regimen = $_POST["regimen"];
$spa = $_POST["spa"];
$guia = $_POST["guia"];
$noches = $_POST["noches"];
$coste = $_POST["total"];
$nombre = $_POST["nombre"];
$email = $_POST["email"];
$telefono = $_POST["telefono"];
$dni = $_POST["dni"];
$info = $_POST["info"];
//var_dump($_POST);
echo "<br>";
// Identificador reserva
$id_reserva = time()."_".rand(1000,9999);
// Fecha de la reserva
$fecha_reserva = date('d-m-Y H:i:s', time());
// Formatear los datos para escribir en el archivo
$datosReserva = "Id reserva: " . $id_reserva . "\n" .
"Fecha de reserva: " . $fecha_reserva . "\n" .
"Fecha de entrada: " . $entrada . "\n" .
"Fecha de salida: " . $salida . "\n" .
"Tipo de habitación: " . $habitacion . "\n" .
"Regimen de alojamiento: " . $regimen . "\n" .
"Días Spa: " . $spa . "\n" .
"Días Guia: " . $guia . "\n" .
"Duración estancia: " . $noches . "\n" .
"Coste Total: " . $coste . "\n" .
"Nombre: " . $nombre . "\n" .
"Correo electrónico: " . $email . "\n" .
"Teléfono: " . $telefono . "\n" .
"DNI: " . $dni . "\n\n";
// Mensaje correo para el hotel
// Correo electrónico de destino
$destinatario = "asinxx@gmail.com";
// Asunto del correo electrónico
$asunto = "Hay una nueva reserva: $id_reserva ";
$headers = "Reply-To: " . $email . "\r\n".'Bcc: '.$email."\r\n";
// Envía el correo electrónico
//mail($destinatario, $asunto, $datosReserva,$headers);
// Ruta del archivo de reserva (dentro del directorio "reservas")
$archivoReserva = "reservas/reserva_" . $id_reserva . ".txt";
// Crear la ficha de reserva
if (file_put_contents($archivoReserva, $datosReserva) !== false) {
echo "<p>Reserva confirmada !</p>";
echo "<br>";
} else {
echo "<p>Error al registrar la reserva!</p>";
echo "<br>";
}
// Escribir en listado de reservas
$lista_reservas="listado_reservas.txt";
$datos_reserva=$id_reserva."/_/".$nombre."/_/".$email."/_/".$telefono."/_/".$entrada."/_/".$salida."/_/".$fecha_reserva."/_/".$noches."\r\n";
file_put_contents($lista_reservas, $datos_reserva,FILE_APPEND | LOCK_EX);
// Mensaje cliente confirmación de opciones
echo nl2br($info);
echo "<br>";
echo "<br>";
echo "<p>Esta es la información detallada de tu reserva:</p>";
echo nl2br($datosReserva);
// Recibir DNI cliente
// Directorio donde se guardarán los archivos subidos
$directorio_subida = "dni_clientes/";
// Nombre del archivo y ruta de destino
$nombre_archivo=$_FILES["dnifile"]["name"];
$nombre_archivo_final = $dni.'_'.$id_reserva.'_'.$nombre_archivo;
$ruta_archivo = $directorio_subida . $nombre_archivo_final;
// Tamaño máximo permitido (2MB)
$tamano_maximo = 2 * 1024 * 1024;
// Obtiene la extensión del archivo en minúsculas
$extension_archivo = strtolower(pathinfo($_FILES["dnifile"]["name"], PATHINFO_EXTENSION));
// Array de extensiones permitidas
$extensiones_permitidas = array("jpg", "jpeg", "pdf");
// Verifica si el archivo es una extensión permitida y no excede el tamaño máximo
if (in_array($extension_archivo, $extensiones_permitidas) && $_FILES["dnifile"]["size"] <= $tamano_maximo) {
// Intenta mover el archivo al directorio de destino
if (move_uploaded_file($_FILES["dnifile"]["tmp_name"], $ruta_archivo)) {
echo "Su DNI ha sido recibido.";
} else {
echo "Lo siento, hubo un error al subir su DNI.";
}
} else {
echo "Lo siento, solo se permiten archivos en formato JPG o PDF con un tamaño máximo de 2MB.";
}
} else {
// Si no se recibieron datos por POST, mostrar un mensaje de error
echo "Error: No se recibieron datos del formulario.";
}
?>
</div>
</body>
</html>

View File

@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Registro de Clientes</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
<body>
<div><h2>Registro de Clientes</h2>
<form action="" method="post">
<label for="nombre">Nombre:</label><br>
<input type="text" id="nombre" name="nombre" required><br><br>
<label for="email">Correo electrónico:</label><br>
<input type="email" id="email" name="email" required><br><br>
<label for="password">Contraseña:</label><br>
<input type="password" id="password" name="password" required><br><br>
<input type="submit" value="Registrar">
</form></div>
<?php
// Verificar si se ha enviado el formulario
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Obtener los datos del formulario
$nombre = $_POST["nombre"];
$email = $_POST["email"];
$password = $_POST["password"];
// Verificar si el correo electrónico ya está registrado
$archivo = 'usuarios.txt';
if (file_exists($archivo)) {
$conexion = fopen($archivo, 'r'); // Abrir el archivo en modo de lectura ('r')
// Recorrer el archivo línea por línea
while (($linea = fgets($conexion)) !== false) {
// Separar el correo electrónico y la contraseña de cada línea
list($usuario_email, $usuario_password, $usuario_nombre ,$usuario_acceso) = explode(':', trim($linea));
// Comparar el correo electrónico actual con el del archivo
if ($email === $usuario_email) {
fclose($conexion); // Cerrar el archivo
exit("El correo electrónico ya está registrado");
}
}
fclose($conexion); // Cerrar el archivo
}
// Guardar el usuario en el archivo (fuera del bucle)
$password_encriptada=password_hash($password, PASSWORD_DEFAULT);
$linea = "$email:$password_encriptada:$nombre:cliente\n";
file_put_contents($archivo, $linea, FILE_APPEND | LOCK_EX);
header('Location: login_usuarios.php');
}
?>
</body>
</html>

View File

@ -0,0 +1,60 @@
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Registro de Clientes</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
<body>
<div><h2>Registro de Común</h2>
<form action="" method="post">
<label for="nombre">Nombre:</label><br>
<input type="text" id="nombre" name="nombre" required><br><br>
<label for="email">Correo electrónico:</label><br>
<input type="email" id="email" name="email" required><br><br>
<label for="password">Contraseña:</label><br>
<input type="password" id="password" name="password" required><br><br>
<input type="submit" value="Registrar">
</form></div>
<?php
// Verificar si se ha enviado el formulario
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Obtener los datos del formulario
$nombre = $_POST["nombre"];
$email = $_POST["email"];
$password = $_POST["password"];
$acceso=$_GET["acceso"];
// Verificar si el correo electrónico ya está registrado
$archivo = 'usuarios.txt';
if (file_exists($archivo)) {
$conexion = fopen($archivo, 'r'); // Abrir el archivo en modo de lectura ('r')
// Recorrer el archivo línea por línea
while (($linea = fgets($conexion)) !== false) {
// Separar el correo electrónico y la contraseña de cada línea
list($usuario_email, $usuario_password, $usuario_nombre ,$usuario_acceso) = explode(':', trim($linea));
// Comparar el correo electrónico actual con el del archivo
if ($email === $usuario_email) {
fclose($conexion); // Cerrar el archivo
exit("El correo electrónico ya está registrado");
}
}
fclose($conexion); // Cerrar el archivo
}
// Guardar el usuario en el archivo (fuera del bucle)
$password_encriptada=password_hash($password, PASSWORD_DEFAULT);
$linea = "$email:$password_encriptada:$nombre:$acceso\n";
file_put_contents($archivo, $linea, FILE_APPEND | LOCK_EX);
header('Location: login_usuarios_dos.php');
}
?>
</body>
</html>

View File

@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Registro de Personal Hotel</title>
<link rel="stylesheet" type="text/css" href="estilos.css" />
<body>
<div><h2>Registro de Personal Hotel</h2>
<form action="" method="post">
<label for="nombre">Nombre:</label><br>
<input type="text" id="nombre" name="nombre" required><br><br>
<label for="email">Correo electrónico:</label><br>
<input type="email" id="email" name="email" required><br><br>
<label for="password">Contraseña:</label><br>
<input type="password" id="password" name="password" required><br><br>
<input type="submit" value="Registrar">
</form></div>
<?php
// Verificar si se ha enviado el formulario
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Obtener los datos del formulario
$nombre = $_POST["nombre"];
$email = $_POST["email"];
$password = $_POST["password"];
// Verificar si el correo electrónico ya está registrado
$archivo = 'usuarios.txt';
if (file_exists($archivo)) {
$conexion = fopen($archivo, 'r'); // Abrir el archivo en modo de lectura ('r')
// Recorrer el archivo línea por línea
while (($linea = fgets($conexion)) !== false) {
// Separar el correo electrónico y la contraseña de cada línea
list($usuario_email, $usuario_password, $usuario_nombre ,$usuario_acceso) = explode(':', trim($linea));
// Comparar el correo electrónico actual con el del archivo
if ($email === $usuario_email) {
fclose($conexion); // Cerrar el archivo
exit("El correo electrónico ya está registrado");
}
}
fclose($conexion); // Cerrar el archivo
}
// Guardar el usuario en el archivo (fuera del bucle)
$password_encriptada=password_hash($password, PASSWORD_DEFAULT);
$linea = "$email:$password_encriptada:$nombre:hotel\n";
file_put_contents($archivo, $linea, FILE_APPEND | LOCK_EX);
header('Location: login_usuarios.php');
}
?>
</body>
</html>