Ir ao conteúdo

Posts recomendados

Postado

o que estou errando? o "&&" ou "and" não está funcionando

 


$email =  $_POST["email"];
$senha = $_POST['senha'];

// contas com acesso
$users = [
	[
		"email" =>"[email protected]",
		"senha" => "teste123"
	],
	[
		"email" =>"[email protected]",
		"senha" => "teste456"
	],
	[
		"email" =>"[email protected]",
		"senha" => "teste789"
	],
	[
		"email" =>"[email protected]",
		"senha" => "teste101"
	],
];
if(!empty($users)){
	for($i=0; $i < count($users); $i++){
		if ($email == $users[$i]["email"] and $senha == $users[$i]["senha"]) {
			echo "Área restrita";	
		}
		else{
			Header('Location: /01/index.html');
		}
	};
}
?>
  • 1 ano depois...
Postado

@Wagner Leandro o problema está no seu for!

 

O problema é que, se a primeira conta de usuário no array $users não corresponder às credenciais informadas pelo usuário,o código já redireciona o usuário para a página index.html, sem verificar as demais contas de usuário no array $users. Isso significa que o usuário pode tentar várias contas de usuário diferentes até encontrar uma conta que corresponda às suas credenciais, o que não é o que você quer provavelmente. TENTE  COM ESSA LOGICA:

 

$email = $_POST["email"];
$senha = $_POST['senha'];

// contas com acesso
$users = [
	[
		"email" =>"[email protected]",
		"senha" => "teste123"
	],
	[
		"email" =>"[email protected]",
		"senha" => "teste456"
	],
	[
		"email" =>"[email protected]",
		"senha" => "teste789"
	],
	[
		"email" =>"[email protected]",
		"senha" => "teste101"
	],
];

$autorizado = false;
foreach ($users as $user) {
	if ($email == $user["email"] && $senha == $user["senha"]) {
		$autorizado = true;
		break;
	}
}

if ($autorizado) {
	echo "Área restrita";
} else {
	header('Location: /01/index.html');
}

 

  • Curtir 1

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...