Login em PHP não entra no sistema

MySQL

PHP

HTML5

07/12/2018

Pessoal, estou desenvolvendo um sistema web em php mas o login não entra no sistema. Apesar que agora está dando esse erro sobre a função mysql_num _rows() que uso para validar o login:

Código da conexão com o BD:

<?php
$host = 'localhost';
$usuario = 'root';
$senha = '';
$banco = 'sismecanic';

$conexao = mysqli_connect($host, $usuario, $senha, $banco) or die ("Não foi possível conectar com o banco de dados!");
?>

Validando o Acesso chamando esse arquivo em outro:

<?php
include ('conexaobd.php');

if(empty($_POST['login']) || empty($_POST['senha'])){
header('Location: index.php');
exit();
}
$login = mysqli_real_escape_string($conexao, $_POST['login']); //funcao protege mysql injection
$senha = mysqli_real_escape_string($conexao, $_POST['senha']);


$sql = "select login, senha from usuarios where login =". '$login' . "and senha = $senha";

$exec = mysqli_query($conexao, $sql);

$rows = mysqli_num_rows($exec);

echo $rows;



if($rows == 1){
header('Location: menuprincipal.php');
exit();
}else{
header('Location: index.php?erro=1');
exit();
}
simplesmente ele cai no else e nao entra na primeira condição acho que deva ser um problema na função mysql_num_rows() mas ja tentei de tudo


Formulário HTML (estou usando bootstrap):
<?php
$erro = isset($_GET["erro"]) ? $_GET["erro"] : 0;
?>
<!DOCTYPE HTML>
<html lang="pt-br">
<head>
<title>SisMeCaniC - Gestão de Oficina Mecânica</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="bootstrap/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="css/estilo.css">
<link rel="shortcut icon" type="image/x-icon" href="imagens/ico.ico">
<script src="jquery/jquery.js"></script>
<script type="text/javascript">
</script>
<meta charset="utf-8">
</head>
<body class="imagem-login">
<div class="container col-md-12">
<header class="page-header">
<img src="imagens/logo.png" class="img-responsive" style="margin: 0 auto;"/>
<h1 class="branco" style="text-align: center">SisMeCaniC - Gestão de Oficina Mecânica</h1>
</header>
<section class="form-group elementcenter">
<div class="col-md-6 col-xs-12">
<form method="post" action="valida_acesso.php">
<h2 class="branco">Login</h2>
<input type="text" placeholder="Login" class="form-control" name="login" autocomplete="off" required />
<h2 class="branco">Senha</h2>
<input type="password" placeholder="Senha" class="form-control" name="senha" autocomplete="off" required /></br>
<?php
if($erro == 1){
echo "<div class='alert alert-danger alert-dismissible' role='alert' style='text-align: center;'><strong>Erro :(</strong> Usuário ou
Senha Inválidos!</div>";}
?>
<input type="submit" class="btn btn-primary col-md-4" name="logar" value="Login">
</form>
</div>
</section>
</div>
</body>
</html>
Luiz Silva

Luiz Silva

Curtidas 0

Melhor post

Luiz Silva

Luiz Silva

07/12/2018

resolvi: meu comando select tava errado era aquele negócio de aspas não tava enxergando as variaveis, é só escrerver assim:

$sql = "SELECT login, senha FROM usuarios WHERE login = '". $login. "' AND senha = '". $senha ."'";
GOSTEI 1
POSTAR