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

Login!


*FIT*

Pergunta

Boa Noite pessoal, fiz um formulario de login que não está funcionando muito bem, na verdade ele não loga o usuario e nem exibe mensagem caso o usuario não exista...

segue o codigo, por favor, se alguém souber qual é o erro, me ajudem.

<?
                  if ($HTTP_POST_VARS['entrar']=='Entrar!')
                    {
                        @session_start();
                        $result = mysql_query('select log_nome,senha from usuarios where log_nome ="'.trim($nome).'";',$conexao);
                        if (mysql_num_rows($result)>0)
                          {
                            $usuSenha=mysql_result($result,0,senha);
                          }
                        else
                          {
                            $usuSenha = 'notuser';
                          }
                        if ($result and ($senha==$usuSenha) and ($usuSenha<>'notuser'))
                          {
                            @session_register($nome);
                            echo '<p align="center">';
                            echo '<font style="Tahoma" size=4>';
                            echo $nome.'</font></br>';
                            echo '<font style="Tahoma" size=2>';
                            echo 'Você está on-line</font>';
                            echo '</p>';
                          }
                  else
                    {
                       echo 'Usuário não autorizado';
                    }
                  }
                 else
                  {
                       echo '<form method = "post" name="Logar" action = "">
                             <font style="Tahoma" size = 1>
                             Nome: <input type="text" name="nome" value="" size="15"></br>
                             Senha: <input type="password" name="senha" value="" size="15"></br></font>
                             <p align="center">
                               <input onmouseover=this.style.cursor="hand" type="submit" name="entrar" value="Entrar!"
                               style="border:0;height:18;width:50;background:#E8F3FD">
                             </p>
                             </form>';
                  }
                ?

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

1. $HTTP_POST_VARS não funciona se register_globals estiver off e nas versões mais recentes nem existirá.

2. session_start(); deve ser escrita na primeira linha.

3. Para garantir que seu sistema vai funcionar de forma mais ampla você deve evitar usar short_tags (<?)

<?php
session_start();

if (@$_POST['entrar']=='Entrar!')
{
    
    $result = mysql_query('select log_nome,senha from usuarios where log_nome ="'.trim($nome).'";',$conexao);
    if (mysql_num_rows($result)>0)
    {
        $usuSenha=mysql_result($result,0,senha);
    }
    else
    {
        $usuSenha = 'notuser';
    }
    if ($result and ($senha==$usuSenha) and ($usuSenha<>'notuser'))
    //    if ($_POST['nome']=='teste')
    {
        @session_register($nome);
        echo '<p align="center">';
        echo '<font style="Tahoma" size=4>';
        echo $nome.'</font></br>';
        echo '<font style="Tahoma" size=2>';
        echo 'Você está on-line</font>';
        echo '</p>';
    }
    else
    {
        echo 'Usuário não autorizado';
    }
}
else
{
    echo '<form method = "post" name="Logar" action = "">
          <font style="Tahoma" size = 1>
          Nome: <input type="text" name="nome" value="" size="15"></br>
          Senha: <input type="password" name="senha" value="" size="15"></br></font>
          <p align="center">
            <input onmouseover=this.style.cursor="hand" type="submit" name="entrar" value="Entrar!"
            style="border:0;height:18;width:50;background:#E8F3FD">
          </p>
          </form>';
}
?>

Link para o comentário
Compartilhar em outros sites

  • 0

Legal, muito obrigado pelas dicas, só que agora acontece o erro nessas linhas

$result = mysql_query('select log_nome,senha from usuarios where log_nome ="'.trim($nome).'";',$conexao);
    if (mysql_num_rows($result)>0)

Link para o comentário
Compartilhar em outros sites

  • 0

Ai já são outros erros...

'select log_nome,senha from usuarios where log_nome ="'.trim($nome).'"

Você abriu a string com aspas simples e fechou com aspas duplas.

Assim talvez funcione:

$cmd = "select log_nome,senha from usuarios where log_nome ='".trim($nome)."'";
$result = mysql_query($cmd,$conexao);

Se mesmo assim não funcionar é porque não deve estar retornando nada do seu bd, ai você tem que debugar seu sql, para ver se o $cmd retorna algo

Link para o comentário
Compartilhar em outros sites

  • 0

Título não descreve a dúvida >> regra 3.6:

3.6 É proibida a abertura de tópicos com títulos como "Socorro", "Ajuda", "Urgente", etc, ou com títulos que não descrevam a dúvida, como "Uma dúvida simples", "Alguém pode me ajudar?", "Dúvida de Iniciante", etc. Tópicos assim serão editados sem aviso prévio.

algo como "Sistema de login e senha não loga"

Vlw

Matheus Matos

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