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

(Resolvido) Ajuda com sessions


guw

Pergunta

Olá! Estou tentando fazer um sistema de login, e ele funciona mas eu não to conseguindo usar do jeito que eu queria a session, pois quando vou acessar a área restrida colocando apenas o link na barra de endereços, eu consigo mesmo não estando logado.

Eis os meus códigos:

index.php

<?
session_star();
session_destroy();

?>

<html>
<head>
<LINK REL="stylesheet" TYPE="text/css" HREF="style.css">
<title>Login</title>
</head>

<body>
<div align="center"><div class="formcadastro">
<form method="POST" action="logar.php">
<div class="ceb">
<input type="text" name="user">
</div>
<div class="ceb2">
<input type="password" name="pass">
</div>
<div class="ceb3">
<input type="submit" value="Entrar"><input type="reset" value="Apagar">
</div>
</form>
</div>
</div>

</body>
</html>
logar.php
<?                            

include("config.php");

$user=$_POST["user"];
$pass=$_POST["pass"];  
$erro=0;
$cadastrado=0;
$tit="Bem-vindo!";

//ver se o usuario foi digitado
                                   
     if($user==""){
       echo "<center><font style=\"color:red;size:18pt;font-family:verdana\">Usuário em branco. Digite o usuário.</font><br>";
       include("index.php");
       $erro++;
       $tit="Login";
       exit;
     }  

//ver se a senha foi digitada

     if($pass==""){
       echo "<center><font style=\"color:red;size:18pt;font-family:verdana\">Senha em branco. Digite a senha.</font><br>";
       include("index.php");
       $erro++;
       $tit="Login";
       exit;
     }

//verificar se usuario e senha existem

  $s="SELECT * FROM usuarios WHERE nome='$user' AND senha='$pass'";
  $v=mysql_query($s);

    $row=mysql_num_rows($v);

    if($row==0) {
      echo "<center><font style=\"color:red;size:18pt;font-family:verdana\">Usuário ou senha incorretos.</font><br>"; 
      include("index.php");
      $erro++;
      $tit="Login";
      exit;
    }


//usar session
  session_start();

  $array=mysql_fetch_array($v);
  $newuser=$array['nome'];
  $_SESSION['nome']=$newuser;

//direcionar

  header("Location:dadosusuario.php");  


?>

<html><head>
<LINK REL="stylesheet" TYPE="text/css" HREF="style.css">
<title><? echo $tit; ?></title>
</head></html>
dadosusuario.php
<?
session_start();

  
  if(isset($_SESSION)) {
    echo "Bem-vindo ".$_SESSION['nome']."!";
  
  } else {
    echo "Você não está logado!";
}

?>

Grato desde já. :)

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Isso é questão de lógica de programação (que deve ser estudada antes de se começar a estudar uma linguagem propriamente dita), como restringir o acesso? Verifique se algo que só alguém que deve ter acesso tem, se tiver permita, caso contrário não.

Exemplo, vamos supor que quando alguém faz login no seu sistema é criada uma sessão chamada nome, assim só vai ter $_SESSION['nome'] quem estiver logado, logo, para não permitir que alguém que não esteja logado no site veja a página a lógica é colocar no topo de cada página (ou criar um arquivo e dar include nos outros) o seguindo código...

<?php
session_start();
if(!isset($_SESSION['nome'])){
echo 'você não está logado';
exit;
}
?>

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