Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

henrique.phpbr

Cada usuário com uma Página (Login Redirect)

Recommended Posts

Pessoal,

 

Preciso de ajuda.

 

Criei um banco de dados chamado: login

 

Tabela: tabela_login

 

CREATE TABLE IF NOT EXISTS `tabela_login` (
`id` int(255) NOT NULL AUTO_INCREMENT,
`usuario` varchar(255) NOT NULL,
`senha` varchar(255) NOT NULL,
`pagina` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
Dados:

usuário: nome01
senha: 123456
pagina: pagina01.php
usuário: nome02
senha: 123456
pagina: pagina02.php
Ou seja gostaria que quando o usuário nome01 logar automaticamente ele seja direcionado para a pagina01.php e quando o usuario nome02 logar ele seja direcionado para a pagina02.php;
Alguém pode me ajudar por favor.
Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

login.php

 

<form method="post" action="valida.php">
<label>Usuário</label>
<input type="text" name="usuario" maxlength="50" />
<label>Senha</label>
<input type="password" name="senha" maxlength="50" />
<input type="submit" value="Entrar" />
</form>
valida.php
( preciso de ajuda )
pagina01.php
( Usuario 01 )
pagina02.php
( Usuario 02)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca Este Código no login.php

 

<?php
if(isset($_POST['usuario'])){
	$servidor = 'localhost'; //Host
	$usuario = 'root'; // User
	$senha = ''; // Senha do User
	$banco = 'login'; // Nome do BD
	
	//Conexao com o BD
	$mysqli = new mysqli($servidor, $usuario, $senha, $banco);
	if (mysqli_connect_errno()) trigger_error(mysqli_connect_error());
	
	
	//Recupera o Usuario e Senha
	$usuario = $_POST['usuario'];
	$senha = $_POST['usuario'];
	
	
	//Faz o Select da Pagina No Banco
	$sql = "SELECT `pagina` FROM `tabela_login` WHERE `usuario`= $usuario AND `senha`= $senha LIMIT 1";
	$query = $mysqli->query($sql);
	
	//Se o Usuario e senha Forem Corretos Entra no While
	if($mysqli->affected_rows > 0){
		while ($dados = $query->mysqli_fetch_array()) {
			//Seleciona a Pagina E Redireciona para a pagina cadastrada no banco
			$pagina = $dados['pagina'];
			header('Location:'.$pagina);
		}
	}else{
		//Se o User e Senha Estiverem Incorretos Exibe a Mensagem
		echo 'Usuario ou Senha Incorretos';
	}
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Titulo da Pagina</title>
</head>
<body>
<form method="post" action="">

    <label>Usuário</label>
    <input type="text" name="usuario" maxlength="50" />
    
    <label>Senha</label>
    <input type="password" name="senha" maxlength="50" />
    
<input type="submit" value="Entrar" />

</form>
</body>
</html>

Assim não é necessário a pagina valida.php pois tudo já é feito na pagina login.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cesar, por gentileza poderia verificar..

 

Ao tentar logar esta apresentando que o usuario ou senha são invalidos.

 

 

Banco de dados: login

 

CREATE TABLE IF NOT EXISTS `tabela_login` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`usuario` varchar(255) NOT NULL,
`senha` varchar(255) NOT NULL,
`pagina` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
--
-- Extraindo dados da tabela `tabela_login`
--
INSERT INTO `tabela_login` (`id`, `usuario`, `senha`, `pagina`) VALUES
(1, 'nome01', 123456', 'pagina01.php'),
(2, 'nome02', '123456', 'pagina02.php');
<?php
if(isset($_POST['usuario'])){
	$servidor = 'localhost'; //Host
	$usuario = 'root'; // User
	$senha = '123456'; // Senha do User
	$banco = 'login'; // Nome do BD
	
	//Conexao com o BD
	$mysqli = new mysqli($servidor, $usuario, $senha, $banco);
	if (mysqli_connect_errno()) trigger_error(mysqli_connect_error());
	
	
	//Recupera o Usuario e Senha
	$usuario = $_POST['usuario'];
	$senha = $_POST['senha']; // Alterei para senha pois estava escrito usuario
	
	
	//Faz o Select da Pagina No Banco
	$sql = "SELECT `pagina` FROM `tabela_login` WHERE `usuario`= $usuario AND `senha`= $senha LIMIT 1";
	$query = $mysqli->query($sql);
	
	//Se o Usuario e senha Forem Corretos Entra no While
	if($mysqli->affected_rows > 0){
		while ($dados = $query->mysqli_fetch_array()) {
			//Seleciona a Pagina E Redireciona para a pagina cadastrada no banco
			$pagina = $dados['pagina'];
			header('Location:'.$pagina);
		}
	}else{
		//Se o User e Senha Estiverem Incorretos Exibe a Mensagem
		echo 'Usuario ou Senha Incorretos';
	}
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Titulo da Pagina</title>
</head>
<body>
<form method="post" action="">

    <label>Usuário</label>
    <input type="text" name="usuario" maxlength="50" />
    
    <label>Senha</label>
    <input type="password" name="senha" maxlength="50" />
    
<input type="submit" value="Entrar" />

</form>
</body>
</html>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz agora com PDO e está funcionando direitinho:

 

<?php
if(isset($_POST['usuario'])){
	$servidor = 'localhost'; //Host
	$usuario = 'root'; // User
	$senha = '123456'; // Senha do User
	$banco = 'login'; // Nome do BD
	
	//Conexao com o BD
	$pdo = new PDO('mysql:host='.$servidor.';dbname='.$banco,$usuario,$senha);
	$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
	
	
	//Recupera o Usuario e Senha
	$usuario = $_POST['usuario'];
	$senha = $_POST['senha']; 
	
	try{
	//Faz o Select da Pagina No Banco
	$sql = $pdo->prepare("SELECT `pagina` FROM `tabela_login` WHERE `usuario`= ? AND `senha`= ? LIMIT 1");
	$sql->execute(array($usuario,$senha));
	
	if($sql->rowCount() > 0 ){
		foreach($sql->fetchAll() as $dados) {
			//Seleciona a Pagina E Redireciona para a pagina cadastrada no banco
			$pagina = $dados['pagina'];
			header('Location:'.$pagina);
		}
		
	}else{
		echo 'Usuario ou Senha Incorretos';
	}
	//Se o Usuario e senha Forem Corretos Entra no While
		
		
	}catch(PDOexception $e){
		echo 'Ocorreu um Erro Ao Conectar : '.$e->getMessage();
	}
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Titulo da Pagina</title>
</head>
<body>
<form method="post" action="">

    <label>Usuário</label>
    <input type="text" name="usuario" maxlength="50" />
    
    <label>Senha</label>
    <input type="password" name="senha" maxlength="50" />
    
<input type="submit" value="Entrar" />

</form>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Henrique.phpbr tudo bom, cara to no mesmo barco que o seu, sem conhecimendo no php+mysql

só o basico do basico, gostaria de te pedir com humildade se possivel você me passar os códigos

de: cadastrar na tabela, validar, pagina de login e execução do direcionamento para paginas destinadas.

 

ah muito tempo estava procurando algo assim, hoje fui pedir ajuda sobre outro assunto e achei o seu.

 

te agradeço se poder me ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aderson,

 

Basta você seguir os passos abaixo:

 

1 - Criar um banco de dados com nome: login

 

2 - Criar uma tabela: tabela_login

 

CREATE TABLE IF NOT EXISTS `tabela_login` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`usuario` varchar(255) NOT NULL,
`senha` varchar(255) NOT NULL,
`pagina` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
3 - Inserir os dados na tabela
INSERT INTO `tabela_login` (`id`, `usuario`, `senha`, `pagina`) VALUES
(1, 'nome01', 123456', 'pagina01.php'),
(2, 'nome02', '123456', 'pagina02.php');
4 - Criar a página login.php com o conteúdo abaixo:
<?php
if(isset($_POST['usuario'])){
	$servidor = 'localhost'; //Host
	$usuario = 'root'; // User
	$senha = '123456'; // Senha do User
	$banco = 'login'; // Nome do BD
	
	//Conexao com o BD
	$pdo = new PDO('mysql:host='.$servidor.';dbname='.$banco,$usuario,$senha);
	$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
	
	
	//Recupera o Usuario e Senha
	$usuario = $_POST['usuario'];
	$senha = $_POST['senha']; 
	
	try{
	//Faz o Select da Pagina No Banco
	$sql = $pdo->prepare("SELECT `pagina` FROM `tabela_login` WHERE `usuario`= ? AND `senha`= ? LIMIT 1");
	$sql->execute(array($usuario,$senha));
	
	if($sql->rowCount() > 0 ){
		foreach($sql->fetchAll() as $dados) {
			//Seleciona a Pagina E Redireciona para a pagina cadastrada no banco
			$pagina = $dados['pagina'];
			header('Location:'.$pagina);
		}
		
	}else{
		echo 'Usuario ou Senha Incorretos';
	}
	//Se o Usuario e senha Forem Corretos Entra no While
		
		
	}catch(PDOexception $e){
		echo 'Ocorreu um Erro Ao Conectar : '.$e->getMessage();
	}
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Titulo da Pagina</title>
</head>
<body>
<form method="post" action="">

    <label>Usuário</label>
    <input type="text" name="usuario" maxlength="50" />
    
    <label>Senha</label>
    <input type="password" name="senha" maxlength="50" />
    
<input type="submit" value="Entrar" />

</form>
</body>
</html>

http://localhost/login.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala pessoal!

 

Estou com uma dificuldade enorme com um sistema de administrador.

Eu montei um sistema de login e cadastro, e eu fiz tudo certo. O meu problema é que quando eu entro na página de administrador e mudo a situação do cliente para pago qualquer usuário que entrar, mesmo quem não pagou vai ver na sua página como pago.

eu preciso montar uma página para cada usuário e que o administrador mude a situação de pagamento de cada usuário separado, mas não sei fazer. sera que poderiam me dar essa forca?

 

desde ja obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, gente esse código me ajudou bastante, porém só tem um problema, alguém poderia me explicar melhor como eu consigo pegar esses dados, pois o que eu inserir estão incorretos ou eu não soube incluir, agradeço desde já pela ajuda.

$servidor = 'localhost'; //Host
	$usuario = 'root'; // User
	$senha = '123456'; // Senha do User
	$banco = 'login'; // Nome do BD
	
	//Conexao com o BD
	$pdo = new PDO('mysql:host='.$servidor.';dbname='.$banco,$usuario,$senha);
	$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.