6. Iniciar Sesión
Crear un Sistema de Inicio de Sesión en Laravel
A continuación te muestro cómo crear un post sobre la implementación de un sistema de autenticación en Laravel:
Título del Post: "Implementando Autenticación en Laravel: Guía Paso a Paso"
Contenido:
¡Hola desarrolladores! Hoy vamos a ver cómo implementar un sistema de inicio de sesión en Laravel, el framework PHP más elegante.
Paso 1: Crear un nuevo proyecto Laravel
composer create-project laravel/laravel proyecto-autenticacion
cd proyecto-autenticacion
composer create-project laravel/laravel proyecto-autenticacion cd proyecto-autenticacion
Paso 2: Configurar la base de datos
Edita el archivo .env con tus credenciales:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=nombre_bd
DB_USERNAME=usuario
DB_PASSWORD=contraseña
.env con tus credenciales:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=nombre_bd DB_USERNAME=usuario DB_PASSWORD=contraseña
Paso 3: Instalar el paquete de autenticación de Laravel
Laravel ofrece un sistema de autenticación listo para usar:
composer require laravel/ui
php artisan ui bootstrap --auth
npm install && npm run dev
composer require laravel/ui php artisan ui bootstrap --auth npm install && npm run dev
Paso 4: Migrar la base de datos
php artisan migrate
php artisan migrate
Paso 5: Personalizar las rutas (opcional)
En routes/web.php puedes modificar las rutas de autenticación:
Auth::routes(['verify' => true]); // Para agregar verificación de email
Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
routes/web.php puedes modificar las rutas de autenticación:Auth::routes(['verify' => true]); // Para agregar verificación de email Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
Paso 6: Personalizar las vistas
Las vistas se encuentran en resources/views/auth/. Puedes modificarlas a tu gusto:
login.blade.php - Formulario de inicio de sesión
register.blade.php - Formulario de registro
etc.
resources/views/auth/. Puedes modificarlas a tu gusto:login.blade.php - Formulario de inicio de sesión
register.blade.php - Formulario de registro
etc.
Paso 7: Proteger rutas
Usa middleware para proteger rutas:
Route::get('/dashboard', function () {
return view('dashboard');
})->middleware('auth');
Route::get('/dashboard', function () { return view('dashboard'); })->middleware('auth');
Paso 8: Obtener el usuario autenticado
$user = auth()->user(); // O
$user = Auth::user();
¡Y listo! Ahora tienes un sistema completo de autenticación con:
Registro de usuarios
Inicio de sesión
Recuperación de contraseña
Protección de rutas
¿Quieres agregar más funcionalidades como login con redes sociales o verificación en dos pasos? ¡Déjamelo saber en los comentarios!
#Laravel #PHP #WebDevelopment #Authentication
Este post es informativo y puede adaptarse según el público objetivo. Puedes agregar capturas de pantalla, ejemplos más detallados o enlaces a documentación oficial para complementarlo
$user = auth()->user(); // O $user = Auth::user();
Registro de usuarios
Inicio de sesión
Recuperación de contraseña
Protección de rutas
Tutorial: Creación de un Sistema de Inicio de Sesión en Laravel
En este tutorial, vamos a implementar un sistema de inicio de sesión en Laravel, utilizando las rutas, controladores y vistas mostradas en las imágenes proporcionadas.
Configuración de Rutas
Primero, configuramos nuestras rutas en el archivo routes/web.php:
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\InicioController;
// Ruta principal que muestra la vista de selección
Route::get('/', function () {
return view('modulos.Seleccionar');
});
// Ruta para mostrar el formulario de inicio de sesión
Route::get('/Ingresar', function () {
return view('modulos.Ingresar');
});
// Rutas de autenticación generadas por Laravel
Auth::routes();
// Ruta protegida después del inicio de sesión
Route::get('Inicio', [InicioController::class, 'index'])->middleware('auth');Creación del Formulario de Inicio de Sesión
Creamos la vista resources/views/modulos/Ingresar.blade.php:
@extends('plantilla')
@section('content')
<div class="login-box">
<div class="login-logo">
<b>Clínica Médica</b>
</div>
<div class="login-box-body">
<p class="login-box-msg">Ingresar al sistema</p>
<form method="POST" action="{{ route('login') }}">
@csrf
<div class="form-group has-feedback">
<input type="email" class="form-control" name="email" placeholder="Correo electrónico" required>
<span class="glyphicon glyphicon-envelope form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
<input type="password" class="form-control" name="password" placeholder="Contraseña" required>
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
<div class="row">
<div class="col-xs-12">
<button type="submit" class="btn btn-primary btn-block btn-flat">Ingresar</button>
</div>
</div>
</form>
</div>
</div>
@endsectionCreación del Controlador
Generamos el controlador y modelo con el comando Artisan:
php artisan make:model Inicio -c -rImplementamos el controlador app/Http/Controllers/InicioController.php:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class InicioController extends Controller
{
public function index()
{
return view('modulos.Inicio');
}
}Creación de la Vista de Inicio
Creamos la vista protegida resources/views/modulos/Inicio.blade.php:
@extends('plantilla')
@section('content')
<div class="content-wrapper">
<section class="content-header">
<h1>Bienvenido al sistema</h1>
</section>
<section class="content">
<div class="box">
<!-- Contenido principal aquí -->
</div>
</section>
</div>
@endsectionConfiguración de la Plantilla Principal
La plantilla principal (resources/views/plantilla.blade.php) debe incluir la lógica para mostrar contenido diferente según si el usuario está autenticado o no:
<!DOCTYPE html>
<html>
<head>
<!-- Cabecera común -->
</head>
<body>
@if(auth()->check())
@yield('content')
@else
@yield('contenido')
@endif
<!-- Scripts comunes -->
</body>
</html>Pasos Finales
Configura la base de datos en el archivo
.envEjecuta las migraciones:
php artisan migrateCrea un usuario de prueba o utiliza el registro proporcionado por Laravel Auth
Conclusión
Con este sistema implementado, los usuarios pueden:
Acceder a la página principal y seleccionar iniciar sesión
Ingresar sus credenciales en el formulario
Ser redirigidos a la vista protegida de Inicio después de autenticarse
En el próximo tutorial, agregaremos un menú de navegación y una cabecera personalizada al sistema.
Comentarios
Publicar un comentario