Jump to content


Photo

Problemas ao ligar a DB após inserir user e pass corretos

login

  • Faça o login para participar
1 reply to this topic

#1 Marianita

Marianita

    Novato no fórum

  • Usuários
  • 2 posts
  • Sexo:Feminino
  • Localidade:Lisboa

Posted 21/11/2015, 21:24

ola eu tenho este código: ficheiro autentica.php

 

<html>
<head>
<title>Untitled</title>
</head>
<body>

 

<html>
    <head>
        <title>Untitled</title>
    </head>
    <body>

        <?php
        require_once("conecta.php");
        //RECEBE OS DADOS DO FORMULÁRIO
        $utilizador = $_POST["txtUser"];
        $senha = $_POST["txtSenha"];
        // CÓDIGO QUE VAI SELECIONAR O REGISTRO QUE É IGUAL AO USERNAME E A SENHA DIGITADOS
        $sql = mysql_query("SELECT U.username, U.nome FROM utilizadores U WHERE U.username = '$utilizador' AND U.senha = '$senha'") or die("ERRO NO COMANDO SQL");
        //COLOCA NA VAIRÁVEL $row A QUANTIDADE DE LINHAS AFETADAS PELA CONSULTA
        $row = mysql_num_rows($sql);
        //VERIFICA O VALOR DA VARIÁVEL $row, SE FOR >0 INDICA QUE A CONSULTA ENCONTROU O UTILIZADOR NA TABELA.
        if ($row == 0) {
            echo "Utilizador/Senha inválidos";
        } else { //PEGA NOS DADOS
            $id = mysql_result($sql, 0, "username");
            $nome = mysql_result($sql, 0, "nome");
            //INICIA A SESSÃO
            session_start();
            //GRAVA AS VARIÁVEIS NA SESSÃO
            $_SESSION[id] = $id;
            $_SESSION[nome] = $nome;
            //REDIRECIONA PARA A PÁGINA QUE VAI EXIBIR OS PRODUTOS
            Header("Location: menu.php");
        }
        ?>

    </body>
</html>

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

AGORA O PROBLEMA:

 

acontece que após digitar o username e password corretos que estão inseridos na DB dá-me uma serie de erros. A DB é a seguinte:

username senha nome email cidade pais   victor viana2015 nome teste@email.com lisboa

portugal

 

e os erros que me aparecem após clicar para entrar são:

 

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/rpublici/public_html/loja/autentica.php:7) in /home/rpublici/public_html/loja/autentica.php on line 27

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/rpublici/public_html/loja/autentica.php:7) in /home/rpublici/public_html/loja/autentica.php on line 27

Warning: Cannot modify header information - headers already sent by (output started at /home/rpublici/public_html/loja/autentica.php:7) in /home/rpublici/public_html/loja/autentica.php on line 32

 

preciso de ajuda! o que tou a fazer é um sistema que me permita inserir produtos por categoria/subcategoria numa DB


resolvido


Edição feita por: ShZlot, 24/11/2015, 12:14.
Colocar o código na tag [code][/code]


#2 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 24/11/2015, 07:26

Cara vamos por partes!

 

Primeiro sempre que for postar algum código, coloque entre as tags [CODE ] e [/ CODE]!

 

O que está ocorrendo e que você deve estar imprimindo algo na tela ou algum código HTML/JS antes de executar as funções session_start() e/ou header(); do PHP, adicione elas sempre no inicio da página.

 

Pelo que vi ele chega a se conectar no banco de dados, mas acho que o problema esta nas linhas abaixo:

 

$id = mysql_result($sql, 0, "username");
$nome = mysql_result($sql, 0, "nome");

 

Verifica antes de ir no header se está retornando algum valor do banco de dados.


-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951





Veja alguns posts relacionados com: login

0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq