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

(Resolvido) Problema com "or die"


Anderson Ferreira

Pergunta

Bom galera .. To fazendo um sistema de login e senha ....

Então, pra fazer o login no sistema, o usuário digita lá no formuláio o login e a senha, e então é executado o seguinte script em PHP/MySql:

$conexao_login = mysql_query("SELECT * FROM usuarios WHERE login='$login' AND senha='$senha'");
    $RS_conexao_login = mysql_fetch_array($conexao_login) or die ("$erro_login");
Então como podem ver, ele procura no BD, registros que coincidem o login e a senha. Se ele não encontrar, quer dizer que ouve um erro, então é executado o "or die" do $RS_conexao_login E dentro do "or die" está a variavel $erro_login... E através de uma include, esta variável está definida da seguinte maneira:
$erro_login = "header('Location: ../index.php?local=login_erro')";

Ou seja, quando ele não encontrasse nenhum resultado com a conexão, tiver o erro, e o "or die" for executado, era pra ele executar a variável $erro_login, que está definida para redirecionar para a página de erro

MAS, ele não redireciona :S // ele ta imprimindo a mensagem "header('Location: ../index.php?local=login_erro')" como se fosse um echo, mas num tem echo, ou seja, era pra ele redirecionar e não imprimir esta mensagem :S

Alguém pode me ajudar? (espero q sim ;D)

Obrigado,

Anderson Ferreira

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Bom .. sei q poderia fazer da seguinte maneira:

$conexao_login = ("SELECT * FROM usuarios WHERE login='$login' AND senha='$senha'");
    $RS = mysql_query($conexao_login);

    if (mysql_num_rows($RS) = 0)
        {
        echo "LOGIN INVÁLIDO";
        }
Mas desta maneira, não seria criado uma 'array'.. E preciso da array pra pegar dados do BD (ou seja, eu utilizo a array pra pegar o nome, da seguinte maneira $RS[nome]) Então, pensei fzaer da seguinte maneira:
$conexao_login = ("SELECT * FROM usuarios WHERE login='$login' AND senha='$senha'");
    $RS = mysql_query($conexao_login);
    $RS_array = mysql_fetch_array($conexao_login);

Ou seja, com 2 RS, um q verificaria se encontrou algum resultado na consulta, e outro com a 'array' q eu usaria pra pegar os resultados da consulta..

Mas o problema q assim da erro :'(

Link para o comentário
Compartilhar em outros sites

  • 0

Isso que você está fazendo não existe e nunca vai funcionar é básico de logica de programação :P ... você está querendo usar a função "die/header" de forma erradas ... e de jeitos que elas não trabalhão.

A funções "die" como o próprio nome já diz é 'morte' ou seja quando você executa ela, ela para a execução de tudo ou seja na linha que ele foi executava ela para tudo, como redirecionar se o seu script "morreu" ... o máximo que ela faz é imprimir um texto simples ... :P

Já a "header" é uma função de cabeçalho ou seja ela envia informações para o Browser (em geral) do que fazer ou receber, ela não retorna nenhum tipo de valor para ser posto em uma váriavel ... logo ela nunca irá funcionar ...

O jeito correto é esse seu segundop exemplo mesmo ... se o problema é receber um array crie um vazio :P

$conexao_login = mysql_query("SELECT * FROM usuarios WHERE login='$login' AND senha='$senha';");

$RS = array();
if (mysql_num_rows($conexao_login) > 0) $RS = mysql_fetch_array($conexao_login);

if (count($RS) > 0) {
 echo "Usuário Logado!";
} else {
 echo "Login Errado!";
}

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,9k
×
×
  • Criar Novo...