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

bash
composer create-project laravel/laravel proyecto-autenticacion
cd proyecto-autenticacion

Paso 2: Configurar la base de datos

Edita el archivo .env con tus credenciales:

env
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:

bash
composer require laravel/ui
php artisan ui bootstrap --auth
npm install && npm run dev

Paso 4: Migrar la base de datos

bash
php artisan migrate

Paso 5: Personalizar las rutas (opcional)

En routes/web.php puedes modificar las rutas de autenticación:

php
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.

Paso 7: Proteger rutas

Usa middleware para proteger rutas:

php
Route::get('/dashboard', function () {
    return view('dashboard');
})->middleware('auth');

Paso 8: Obtener el usuario autenticado

php
$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

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:

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:

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>
@endsection

Creación del Controlador

Generamos el controlador y modelo con el comando Artisan:

bash
php artisan make:model Inicio -c -r

Implementamos el controlador app/Http/Controllers/InicioController.php:

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:

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>
@endsection

Configuració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:

php
<!DOCTYPE html>
<html>
<head>
    <!-- Cabecera común -->
</head>
<body>
    @if(auth()->check())
        @yield('content')
    @else
        @yield('contenido')
    @endif
    
    <!-- Scripts comunes -->
</body>
</html>

Pasos Finales

  1. Configura la base de datos en el archivo .env

  2. Ejecuta las migraciones: php artisan migrate

  3. Crea un usuario de prueba o utiliza el registro proporcionado por Laravel Auth

Conclusión

Con este sistema implementado, los usuarios pueden:

  1. Acceder a la página principal y seleccionar iniciar sesión

  2. Ingresar sus credenciales en el formulario

  3. 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

Entradas más populares de este blog

8-Creación de una API RESTful con Laravel

02 -Rutas en Laravel

3-Rutas