Boa tarde,
Sou iniciante em programação, conclui alguns cursos de linguagem php aqui na plataforma da Alura, cursos esses que tem agregado muito no meu desenvolvimento. Me motivei a encarar um desafio de criar um projeto consolidando os aprendizados desses cursos.
O projeto é de criar uma aplicação usando o padrão MVC com orientação a objeto. Essa aplicação contará com cadastro de usuário e estrutura de login que valida o usuário e direciona para o sistema onde ele irá trabalhar, estou em faze inicial do projeto.
Desenvolvi uma pagina index que seria o site da empresa com os links no menu para o usuário fazer o cadastro se não for cadastrado e fazer o login caso já tenha feito seu cadastro, ambos os links direcionam para paginas diferentes de acordo com a sua funcionalidade!
A parte de cadastro consegui fazer e está funcionando, os dados cadastrados estão sendo inseridos no banco de dados, estou tendo dificuldades em fazer a parte da validação do login e logar no sistema.
index.php
<?php
include '../includes/header.php';
?>
<title>Home</title>
</head>
<body>
<header>
<nav class="navbar navbar-expand-lg bg-light fixed-top menu-top border-bottom border-primary">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav"
aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end mt-3" id="navbarNav">
<ul class="nav nav-tabs card-header-tabs">
<li class="nav-item">
<a class="nav-link" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="cadastro.php">cadastre-se</a>
</li>
<li class="nav-item">
<a class="nav-link" href="login.php">Login</a>
</li>
</ul>
</div>
</nav>
</header>
<main>
</main>
<footer>
</footer>
</body>
<?php
include '../includes/footer.php'
?>
</html>
login.php
Aqui vem a primeira dúvida, não sei se estou instanciando a classe Login da forma correta...
<?php
include '../includes/header.php';
require_once '../models/conexao.php';
require_once '../controllers/ControllerLogin.php';
require_once '../models/redireciona.php';
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// 2 - Criando método para acessar o conteúdo dos metodos post do formulário
$login = new Login($mysql);
$valida_login = $login->logar($_POST['usuario'], $_POST['senha']);
if ($login) {
redireciona('../views/dashboard.php');
exit;
} else {
redireciona('../views/login.php');
exit;
}
}
?>
<title>Login</title>
</head>
<body>
<div class="container border rounded bg-light mt-5">
<article class="container">
<div class="d-flex justify-content-center mt-5 mb-3">
<img class="logo" src="../assets/imagens/logo.jpg" alt="Logo Inova Ação Tecnologia">
</div>
<div class="d-flex justify-content-center mb-2 col">
<h5>Faça seu login</h5>
</div>
<form class="container container-modal flex-column mb-2" action="../controllers/ControllerLogin.php" method="POST">
<div>
<input type="text" class="form-control radius-top p-4" id="usuario"
placeholder="Insira o nome de usuário cadastrado" name="usuario">
</div>
<div>
<input type="text" class="form-control radius-botton p-4" id="senha" placeholder="Senha" name="senha">
</div>
<div class="d-flex justify-content-center mt-3">
<div class="input-control">
<label for="">
<input class="form-check-input" type="checkbox" value="" aria-label="">
Remember me
</label>
</div>
</div>
<div class="d-flex justify-content-center my-4">
<button type="submit" class="btn btn-primary botao-modal">Entrar</button>
</div>
</form>
</article>
</div>
</body>
<?php
include '../includes/footer.php'
?>
</html>