Ir ao conteúdo

Posts recomendados

Postado

Boa tarde. Estou fazendo um sistema, e na parte de login está dando certo (em localhost):


image.thumb.png.7b25ef33d15a7afb22ea255bdaa83a2b.png

 

Veja meu código:

 

<?php
	session_start();
	include("conecta.php");

$login=$_POST['cpf'];
$senha=$_POST['senha'];
$senha_md5=md5($senha);
$pontos = array("-",".");
$result = str_replace($pontos, "", $login);
$login = $result;

$busca_sql = "SELECT * FROM `autenticacao` WHERE login = '{$login}' and senha='{$senha}';";
$result_sql= mysqli_query($connect, $busca_sql) or die ('Algo deu errado na query Busca de Login: '.mysqli_error($connect));
$usuario=mysqli_fetch_assoc($result_sql);

if($usuario == null) {
		header("Location: login.php?login=0");
		
	} else {
		$_SESSION['usuario_logado'] = true;

		
		$nome_sql = "SELECT * FROM `usuario` WHERE cpf = '{$login}';";
		$result_nome= mysqli_query($connect, $nome_sql) or die ('Algo deu errado na query Busca do Nome: '.mysqli_error($connect));
		$nome=mysqli_fetch_assoc($result_nome);
		$_SESSION['usuario_nome']=$nome["nome"];
		$_SESSION['usuario_sobrenome']=$nome["sobrenome"];
		$_SESSION['usuario_cpf']=$nome["cpf"];
		setcookie("usuario_logado", $nome_completo);
		header("Location: login.php?login=1"); 
	}
	die();
?>
<div class="imagem-banner"> 
			<img class="img-thumbnail" src="../images/Principal.jpg"> 
</div>

 

Porém, ao enviar para o meu host (000webhostapp) exatamente o mesmo código, dá um erro ao tentar fazer o login, veja:

 

image.thumb.png.e883fdcd15c8fac409890d10ade4c887.png

 

Alguém pode me ajudar?

 

P.S: Reforçando --> O que está no localhost (onde está funcionando tudo) são exatamente o mesmos arquivos que enviei para o webhost, mudando apenas o arquivo "conecta.php" que possui os dados do banco de dados.

Postado
3 minutos atrás, Leonardo0308 disse:

Boa tarde @Lucas-Guamá

 

Onde está sendo setado o valor dessa variável $nome_completo? 

 


setcookie("usuario_logado", $nome_completo);

 

Olá. Obrigado por responder!

$nome_completo não esta setado em nenhum lugar. Porém, quando você disse isso eu setei um valor qualquer pra ela no meu código "$nome_completo = 'oi'". Quando fiz isso, todos os erros sumiram, porém na tela de login aparece a apenas a mensagem "Logado com sucesso", mas eu realmente não estou logado.
image.thumb.png.2ef4e353ec3682a460bc17ad46354a9e.png

 

Eu sei que não estou logado, pois ao estar logado deve acontecer duas coisas:
1 - Deve aparecer: "Você está logado como "nome do usuário logado aqui"
2 - A barra de navegação deve mostrar as opções "Minha Conta", "Enviar TCC" e "Sair".

 

Veja como fica quando faço login no sistema, mas pelo localhost (que é onde está funcionando):

image.thumb.png.abdf4217de4b0179285f6ec1c179d88a.png

 

É como se quando eu faço login (no webhost) ele não fizesse o login de fato, setando SESSION e COOKIE.

Postado
agora, Leonardo0308 disse:

@Lucas-Guamá uma coisa boba, mas que as vezes pode resolver o problema ou verificar se é realmente problema no código, é limpar os cookies e cache do navegador.

Não é no navegador, pois já testei em guia anônima e testei também no meu celular.

O código está funcionando 100%, mas apenas em localhost. No webhost fica dando esse problema, não sei porque, já que é exatamente o mesmo código que está em localhost.

Postado
1 minuto atrás, Leonardo0308 disse:

As configurações da hospedagem são as mesma do servidor que você está rodando local?

Não. Há um arquivo chamado "conecta.php", nele há as informações de acesso ao banco (root, db, senha etc..). O localhost possui as informações do Banco de Dados do localhost e o webhost possui as informações de acesso ao Banco de Dados do webhost.

Postado
9 minutos atrás, Leonardo0308 disse:

Me refiro a versão do PHP, versão do servidor apache ou de outro servidor que esteja usando, esse tipo de coisa.

Ah sim, desculpe.

Sou leigo quanto a essa parte, mas veja isso:

 

localhost:

 

local.png.6a2ecd81e9ade3fb3df8c31435881267.png

 

webhost:

 

web.png.c6670d612bd1b422870f2719d6ea0cc6.png

Postado

Bem, os banco de dados são diferentes, eu nunca mexi em MariaDB. 

 

Não sei informar se o mysqli é compatível com o MariaDB.

 

Mas esse pode ser uma possível causa dos problemas.

Postado
10 minutos atrás, Leonardo0308 disse:

Bem, os banco de dados são diferentes, eu nunca mexi em MariaDB. 

 

Não sei informar se o mysqli é compatível com o MariaDB.

 

Mas esse pode ser uma possível causa dos problemas.

Opa, isso já é uma luz! Vou procurar saber como alterar de MariaDB para MySQL. Muito obrigado pela sua ajuda.

  • Curtir 1
Postado

@Lucas-Guamá Cara eu notei alguns erros no seu código.

 

Tipo você utiliza include em algo que você realmente vai precisar, nesse caso é melhor e mais recomendado você utilizar o require.

 

Pela posição do elemento <div> você coloca o código php dentro do elemento html, até ai não tem problema, mas você utiliza session, e session deve ser declarada antes do elemento <html> e do <!DOCTYPE html>, você também utiliza header, que também deve ser colocado antes dos elementos citados.

 

Na sua consulta ao banco de dados você coloco o "and" em minúsculo sendo que o certo é "AND" em maiúsculo.

 

Você também não tem nenhum filtro nos dados que vem do método post, e muito menos um sistema de validação de usuário.

image.thumb.png.5bffb8f9283b564ac7da1e376de917bb.pngimage.thumb.png.69b078bda9de8ad6a12282493b1d47b8.png

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...