Bem estou desenvolvendo o meu TCC que é um protótipo de uma plataforma para professores desenvolverem atividades e comecei com uma tela de login:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/login.css" />
<script src="https://code.jquery.com/jquery-3.7.1.min.js" integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=" crossorigin="anonymous"></script>
<title>Gráfis</title>
</head>
<body>
<div class="container">
<div class="left">
<div class="border">
<div class="card">
<form class="form" id="form_id" method="post" enctype="multipart/form-data" action="php/login.php">
<span>Login</span>
<label for="usuario">Usuario:</label>
<input type="text" name="nome" id="nome_id" placeholder="(Nome completo)">
<label for="senha">Senha:</label>
<input type="text" name="senha" id="senha_id" placeholder="(Minimo 4 caracteres e 3 números)">
<input type="submit" value="Entrar" class="cadastrar">
<a href="#">Nâo tem uma conta? Crie uma aqui!</a>
<div id="error-message"></div>
</form>
</div>
</div>
</div>
<div class="right">
<div class="shape">
<img src="./assets/logo_g.png" alt="logo">
<span>Ajudando Educadores à educarem</span>
</div>
</div>
</div>
<script src="js/login.js"></script>
</body>
</html>
logo desenvolvi uma base de dados para quando usuário aperte o input as informações sejam pesquisadas por php no BD
$bd = mysqli_connect("localhost", "root", "", "Usuario") or die("Erro ao conectar ao banco de dados!");
$nome = $_POST["nome"];
$senha = $_POST["senha"];
if(isset($nome) && isset($senha)){
$consulta_usu = mysqli_query($bd, "select * from usuario_info where nome = '$nome' and senha = '$senha'");
$resultado = mysqli_fetch_array($consulta_usu);
if($resultado){
echo json_encode(array("success" => true));
}else{
echo json_encode(array("erro" => "Usuário ou senha incorretos"));
}
}
else{
echo json_encode(array("erro" => "Preencha as lacunas para poder logar"));
}
?>
No desenvolvimento desse php descobri a função json_encode que consegue transformar strings em JSON, logo lembrei de outra função Js que consegue ler JSONs o .feath()
const form = document.querySelector('#form_id');
form.addEventListener('submit', (event) => {
event.preventDefault();
fetch('php/login.php')
.then(response => response.json())
.then(data => {
if(data.success){
window.location.href = "home.html";
} else {
const errorMessage = document.getElementById('error-message');
errorMessage.textContent = data.erro;
}
})
.catch(error => {
console.error('Erro durante o processo de login:', error);
const errorMessage = document.getElementById('error-message');
errorMessage.textContent = "Ocorreu um erro durante o processo de login.";
});
});
pensei que estava tudo certo porem quando apertava o submit o navegador direcionava a pagina para o php que imprimia os array na tela (mas as condições estavam sendo respeitadas pelo menos)ouvi dizer que ajax poderia resolver meu problema mas não tenho ideia de como utilizar 
