Ir para conteúdo
Fórum Script Brasil
  • 0

Sistema de login


Esmael Silva

Pergunta

Bem pessoal, poderiam me ajudar a desenvolver um sistema de login para cada usuário que logar, for redirecionado para sua devida página?!

Por exemplo: Aluno 1 se logou com seu login e senha, foi redirecionado para a página notas/aluno1.php, mas não pode visualizar a página notas/aluno2.php, por exemplo, a não ser que logue-se como aluno 2.

Seria possível me ajudarem?

Grato.

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Eae Esmael, vou te ajudar nessa

sei que você esta começando, então primeiramente quero te dizer se é que tu já não sabe, que para rodar scripts PHP eles precisam estar em servidores, pode ser hospedados ou até mesmo servidores local, como o Xamp ou Wamp, e tambem usaremos banco de dados nesse sistema que vou te mostrar, então tem que ter instalado um banco de dados, enfim, vamos la

1° - criei uma tabela no banco de dados, coloquei 3 colunas nota1, nota2, nota3, então coloque manualmente esses valores para fazer os testes, segue o código SQL para criação da tabela...

CREATE TABLE  aluno (
  id int(10) NOT NULL auto_increment,
  aluno varchar(255) default NULL,
  senha varchar(255) default NULL,
  nota1 decimal(10,0) default NULL,
  nota2 decimal(10,0) default NULL,
  nota3 decimal(10,0) default NULL,
  PRIMARY KEY  (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2° - index.php


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Pagina Inicial</title>
</head>

<body>
<?php
if(isset($mensagem)){
echo "$mensagem <br /><br />";
}
?>
logar:
<br />
<br />
<form action="valida_login.php" method="post">
aluno:
<input type="text" name="aluno" />
senha:
<input type="password" name="senha" />
<input type="submit" name="logar" value="logar" />
</form>
<br />
<br />
<a href="cadastro.php">Cadastre-se</a>
</body>
</html>
[/codebox]

3° - cadastro.php

[codebox]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastro</title>
</head>

<body>
<?php
if(isset($mensagem)){
echo "$mensagem <br /><br />";
}
if(isset($mensagemok)){
echo "$mensagemok<br /><br />";
}
?>
cadastre-se:
<br />
<br />
<form action="valida_cadastro.php" method="post">
aluno:
<input type="text" name="aluno" />
senha:
<input type="password" name="senha" />
<input type="submit" name="cadastro" value="cadastrar" />
</form>
<br />
<br />
<a href="index.php">voltar</a>
</body>
</html>

4° - valida_cadastro.php


<?php
include "banco.php";
$aluno = $_POST['aluno'];
$senha = $_POST['senha'];
$sql_aluno = mysql_query("SELECT * FROM aluno WHERE aluno = '$aluno'");
$erro = 0;

if(empty($aluno)){
$erro ++;
$mensagem = "informe o nome do aluno";
}
elseif(mysql_num_rows($sql_aluno) == 1){
$erro ++;
$mensagem = "aluno já cadastrado";
}
elseif(empty($senha)){
$erro ++;
$mensagem = "informe uma senha";
}
if($erro != 0){
include 'cadastro.php';
}
else{
$sqlCadastra = mysql_query("INSERT INTO aluno (aluno, senha) VALUE ('$aluno', '$senha')");
$mensagemok = "Cadastro efetuado com sucesso! Obrigado!";
include 'cadastro.php';
}
?>
[/codebox]

5º - banco.php (conecta com o banco de dados, OBS: coloque os dados do seu banco, como servidor, usuario, senha, e nome do banco)

[codebox]
<?php
$host = "localhost";
$user = "root";
$senha = "";
$dbname = "testes";
mysql_connect($host, $user, $senha) or die ("não foi possível conectar-se com o banco de dados");
mysql_select_db($dbname) or die ("não foi possivel conectar-se com o banco de dados");
?>

6° - valida_login.php


<?php
include "banco.php";

session_start();

$aluno = $_POST['aluno'];
$senha = $_POST['senha'];
$sql_acesso = mysql_query("SELECT * FROM aluno WHERE aluno = '$aluno' AND senha = '$senha'");
if(mysql_num_rows($sql_acesso) != 1){
$mensagem = "usuario ou senha incorretos";
include "index.php";
}
else{
$_SESSION['alunoSession'] = $aluno;
$_SESSION['senhaSession'] = $senha;
include 'aluno.php';
}
?>
[/codebox]

7° - aluno.php

[codebox]
<?php
if(!isset($_SESSION)){
session_start();
}
if(!isset($_SESSION['alunoSession']) AND !isset($_SESSION['senhaSession'])){
header("Location: index.php");
exit;
}
else{
$login = $_SESSION['alunoSession'];
$senha = $_SESSION['senhaSession'];
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Pagina do Aluno</title>
</head>

<body>
<?php
$sql_PegaAluno = mysql_query("SELECT * FROM aluno WHERE aluno = '$login' AND senha = '$senha'");
while($dados = mysql_fetch_array($sql_PegaAluno)){
$id = $dados['id'];
$aluno = $dados['aluno'];
$nota1 = $dados['nota1'];
$nota2 = $dados['nota2'];
$nota3 = $dados['nota3'];
}
?>
Olá <?php echo $aluno; ?>! Seja bem Vindo!
<br /><br />
Suas notas:
<br /><br />
Nota 1: <?php echo $nota1; ?><br />
Nota 2: <?php echo $nota2; ?><br />
Nota 3: <?php echo $nota3; ?><br /><br />

<a href="logout.php">sair</a>
</body>
</html>

8° - logout.php


<?php
session_start();
unset($_SESSION['alunoSession']);
unset($_SESSION['senhaSession']);
header("Location:index.php");
?>
[/codebox]

bom é isso aí, é um sistema básico, sem nada de estilo, só pra você pegar como exemplo, não expliquei os códigos pois levaria muito tempo, mas qualquer coisa pode perguntar que respondo assim que tiver um tempo

abraço! bom estudo!

Link para o comentário
Compartilhar em outros sites

  • 0

Cara, obrigado pela ajuda.

Mas as páginas com as notas, já estão criadas, de todos os alunos.

Eu já tenho o XAMPP aqui no pc.

Como eu disse acima, eu queria um sistema de login, que por exemplo o aluno 1 logasse com seu devido email e senha, ele fosse redirecionado para a página aluno1.php, mas não pudesse visualizar, a página aluno2.php, por exemplo.

Editado por Esmael Silva
Link para o comentário
Compartilhar em outros sites

  • 0

Esmael tu fez o que eu fazia não muito tempo atras, tu criou 1 pagina para cada aluno, mas não precisa, basta criar apenas 1 pagina para todos os alunos, e quando esse aluno logar você redireciona para essa pagina, e faz uma busca no banco pelo id que foi redireciona e busca todas as informações do banco desse aluno, e depois exibe na pagina, conseguiu entender nesse exemplo que postei, fiz exatamente isso.

Isso vai te poupar muito trabalho!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...