Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou cursando aula pra aprender php e eu estava montando uma pagina de login, está tudo certo, mas não consegue conectar de jeito nenhum vou mandar o código pra vocês darem uma olhada banco de dados "aula" tabela "usuarios" contem, usuarios, senha, email e ID
<?php require_once"config.php"?>
<?php if ( isset($_POST["usuario"])) { $usuario = $_POST["usuario"]. $senha = $_POST["senha"]. $login = "SELECT * ". $login.= "FROM usuarios ". $login.= "WHERE usuario = '{$usuario}' and senha = '{$senha}' ". $acesso = mysqli_query($conecta, $login). if (!$acesso) { die("Falha na consulta ao banco!"). } $informacao = mysqli_fetch_assoc($acesso). if ( empty($infomacao)) { $mensagem = "login sem sucesso". } else { header("location:listagem.php"). } }?>>
2 horas atrás, gabrielms disse:
@groudon900
Bom eu não achei nenhum erro no seu código porem, você fala que na sua tabela existe os seguintes campos:
e na sua consulta você coloca "usuario" no singular e você escreveu que na sua tabela está no no plural.
$login .= "WHERE usuarios = '{$usuario}' and senha = '{$senha}' ";
Para verificar se exite algum erro na sua consulta ao SQL você pode usar o método mysqli_error();
Faz uma alteração no seu código de:
if ( !$acesso) {
die("Falha na consulta ao banco!");
}
Para:
if (!$acesso)
{
die(mysqli_error($conecta));
}
olá obrigado por responder, eu coloquei o código de erro e não acusa, alias não se mexe, não acontece nada e sobre o meu codigo,
é o seguinte a tabela é (usuarios) e tem o (login) e (senha)
vou mandar o código de novo !
<?php
if (isset( $_POST["login"])) {
$login = $_POST["login"];
$senha = $_POST["senha"];
$sql = "SELECT * FROM usuarios WHERE login = '$login' AND senha = '$senha'";
$acesso = mysqli_query($conecta,$sql);
if (!$acesso) {
die(mysqli_error($conecta));
}
$infomacao = mysqli_fetch_assoc($acesso);
if ( empty($informacao)) {
$mensagem = "login sem sucesso";
} else {
header("location:logado.php");
}
}
?>@groudon900 Bom faz algumas verificações no seu código.
Adiciona um var_dump() na variável global $_POST para verificar se os dados estão sendo enviados corretamente. Adiciona também um na variável $sql para verificar a solicitação que está indo para o bando de dados.
<?php
var_dump($_POST);
$mensagem = "O dados de login não foram inseridos";
if (isset( $_POST["login"]))
{
$login = $_POST["login"];
$senha = $_POST["senha"];
$sql = "SELECT * FROM usuarios WHERE login = '$login' AND senha = '$senha'";
var_dump($sql);
$acesso = mysqli_query($conecta,$sql);
if (!$acesso)
{
die(mysqli_error($conecta));
}
$infomacao = mysqli_fetch_assoc($acesso);
if (empty($informacao))
{
$mensagem = "Login sem sucesso";
}
else
{
$mensagem = "O login foi efetuado com sucesso";
}
}
echo($mensagem);
Obs..: Eu não sei se você mostra a variável $mensagem em outra parte do código mas, está faltando um echo ali para mostra a massagem de login sem sucesso.Mostra como está esse config.php..
>
Agora, Thalles Rangel disse:
Mostra como está esse config.php..
Pessoal o problema era com o meu (config.php) apesar de estar bem simples tava dando algum erro, eu refiz outro e está funcionando ! agradeço a ajuda de todos
Assim que tava
<?php
$host = "localhost";
$user = "root";
$pass = "";
$banco= "aula";
$conecta = mysqli_connect($host,$user,$pass,$banco);
if (!$conecta) {
die("Conexão sem sucesso");
}
?>
e como ta agora!
<?php
define('HOST', '127.0.0.1');
define('USUARIO', 'root');
define('SENHA', '');
define('DB', 'aula');
$conexao = mysqli_connect(HOST, USUARIO, SENHA, DB) or die ('Não foi possível conectar');
@groudon900
Bom eu não achei nenhum erro no seu código porem, você fala que na sua tabela existe os seguintes campos:
>
21 horas atrás, groudon900 disse:
contem, usuarios, senha, email e ID
e na sua consulta você coloca "usuario" no singular e você escreveu que na sua tabela está no no plural.
{