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

(Resolvido) Editando um post em Erro ao imprimir / mostrar nome do usu


bateraaa

Pergunta

Ae galera, beleza? Estou precisando da ajuda de vocês pro seguinte:

Estou tentando mostrar na tela o nome do usuário logado utilizando session. Ele entra no sistema mas na hora de puxar o nome dele pra mostrar na tela, não aparece!

Os códigos são:

O arquivo de formulário para login formlogin.php:

<html>
<head>
<title>Login</title>
</head>
<body>
<form name="form1" method="post" action="logando.php">
  <table width="350" border="0" cellspacing="0" cellpadding="0">
    <tr> 
      <td colspan="4">Já é cadastrado? Entre aqui.</td>
    </tr>
    <tr> 
      <td width="1%" rowspan="4"> </td>
      <td colspan="3"> </td>
    </tr>
    <tr> 
      <td>E-mail:</td>
      <td colspan="2"><input name="cxmail" type="text" class="camposform" id="cxmail3" size="40" maxlength="255"></td>
    </tr>
    <tr> 
      <td>Senha:</td>
      <td colspan="2"><input name="cxsenha" type="password" class="camposform" id="cxsenha" size="40" maxlength="255"></td>
    </tr>
    <tr> 
      <td> </td>
      <td width="20%"><input name="Submit" type="submit" class="caixas" value="Entrar"></td>
      <td width="63%"><input name="Submit2" type="reset" class="caixas" value="Limpar formulário"></td>
    </tr>
  </table>
      </form>
</body>
</html>
O arquivo logando.php
<?php
    session_start;
    include "config.php";
    $mail=$_POST['cxmail'];
    $senha=$_POST['cxsenha'];
    if(empty($mail) or empty($senha))
    {
        $texto="Dados nulos ou inválidos<br><A HREF=java script:history.go(-1)>Voltar</a>";
        $_SESSION['erro']=$texto;
        include "404.php";
        exit;
    }
    else
    {
        $seleciona=mysql_query("select * from cadastros where mail='$mail' and senha='$senha'");
        $x=mysql_num_rows($seleciona);
        if($x==0)
        {
            $texto="Nome ou senha incorretos<br><A HREF=java script:history.go(-1)>Voltar</a>";
            $_SESSION['erro']=$texto;
            include "404.php";
            exit;
        }
        else
        {
            $_SESSION['usuario']=$mail;
            $_SESSION['senha']=$senha;
            include "session.php";
            exit;
        }
    }
?>
E o arquivo session.php (teste para visualizar o nome)
<html>
<head>
<title>Mostra</title>
</head>
<body>
mostra: <?php echo $_SESSION['usuario']; ?>
</body>
</html>

Só que depois de logado, ao abrir a página session.php não aparece o nome do usuário.

O que estou fazendo de errado?

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
onde está o session_start() do session.php?

Se eu coloco session_start(); ele aparece isso:

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\appserv\www\dgnovo\banner.php:68) in c:\appserv\www\dgnovo\session.php on line 6

Você por acaso colocou o session_start() na página em que quer exibir no nome? Se colocou abaixo disso colocar print_r($_SESSION); para ver tudo o que está gravado em sessões...

Se eu deixar o código assim:

mostra: <?php session_start();
print_r($_SESSION); ?>

Ele até mem mostra o usuário e a senha (asd) mas também aparece:

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\appserv\www\dgnovo\banner.php:68) in c:\appserv\www\dgnovo\session.php on line 6

Array ( [login] => asd [senha] => asd )

Link para o comentário
Compartilhar em outros sites

  • 0

Esse é um dos erros mais conhecidos, como infelizmente o google ainda é pouco conhecido, vou te dar a resposta: Coloca o session_start() antes de tudo, ele tem que vir no topo do arquivo, porque quando você manda escrever alguma coisa no arquivo o cabeçalho é enviado, e ai o session_start gera o erro por não poder modificar mais o cabeçalho...

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,2k
    • Posts
      652k
×
×
  • Criar Novo...