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

Coluna: Login E Senha Não Funciona Alguém Ajuda?


ideiascriativas

Pergunta

Olá Pessoal,

Sou novato no PHP e estou colocando em prática alguns tutorias e verifiquei esse aqui no portal php da script vejam:

http://php.scriptbrasil.com/?class=14&id=601&tema=imgs_php.gif

Sistema de login e senha em php, mas geram os erros nessa parte do código:

Warning: Cannot modify header information - headers already sent by (output started at /usr/home/httpd/html/matrix/webmaster/loginPHP/config.php:11)

linhas 28, 29 e 31

que são essas linhas aqui:

{

setcookie("nome_usuario", $username);

setcookie("senha_usuario", $senha);

// direciona para a página inicial dos usuários cadastrados

header ("Location: teste.php");

}

Alguém se habilita a ajudar?

valeu

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

desculpe a pertubação :-/

Gerou estes erros agora:

Warning: Cannot modify header information - headers already sent by (output started at /usr/home/httpd/html/matrix/webmaster/loginPHP/config.php:11) in /usr/home/httpd/html/matrix/webmaster/loginPHP/login.php on line 28

Warning: Cannot modify header information - headers already sent by (output started at /usr/home/httpd/html/matrix/webmaster/loginPHP/config.php:11) in /usr/home/httpd/html/matrix/webmaster/loginPHP/login.php on line 29

line 28 e 29:

setcookie("nome_usuario", $username);

setcookie("senha_usuario", $senha);

Link para o comentário
Compartilhar em outros sites

  • 0

Pessoal,

Um amigo me ajudou, estava faltando a parte em negrito no código! eu ainda não sei o que significa ... mas vou pesquisar! :-)

Agora esta funcionando OK!

pagina: login.php

<?

ob_start();

// obtém os valores digitados

$username = $_POST["username"];

$senha = $_POST["senha"];

// acesso ao banco de dados

include "config.php";

$resultado = mysql_query("SELECT * FROM usuarios where username='$username'");

$linhas = mysql_num_rows ($resultado);

if($linhas==0) // testa se a consulta retornou algum registro

{

echo "<html><body>";

echo "<p align=\"center\">Usuário não encontrado!</p>";

echo "<p align=\"center\"><a href=\"login.html\">Voltar</a></p>";

echo "</body></html>";

}

else

{

if ($senha != mysql_result($resultado, 0, "senha")) // confere senha

{

echo "<html><body>";

echo "<p align=\"center\">A senha está incorreta!</p>";

echo "<p align=\"center\"><a href=\"login.html\">Voltar</a></p>";

echo "</body></html>";

}

else // usuário e senha corretos. Vamos criar os cookies

{

setcookie("nome_usuario", $username);

setcookie("senha_usuario", $senha);

// direciona para a página inicial dos usuários cadastrados

header ("Location: teste.php");

}

}

mysql_close($con);

ob_end_flush();

?>

Link para o comentário
Compartilhar em outros sites

  • 0

é porque acontece o seguinte...

pelo que vi você estava imprimindo na página.. e depois estava tentando criar cookies.. e isso não é possível.. pois criação de cookies seria parte de cabeçalho.. e não se pode enviar cabeçalhos depois de imprimir textos na página...

a função ob_start -- Ativa o buffer de saída

Enquanto o buffer de saída estiver ativo, não é enviada a saída do script (outros que não sejam cabeçalhos), ao invés a saída é guardada em um buffer interno.

depois com função ob_end_flush -- Descarrega (envia) o buffer de saída e desativa o buffer de saída

Esta função irá enviar o conteúdo do buffer mais em cima e desativar o buffer de saída.

isso quer dizer... você ativa o buffer... e tudo que tiver de saída para o browser será guardado em um buffer interno até que você descarregue ele... podendo assim, definir cabeçalhos..

Link para o comentário
Compartilhar em outros sites

  • 0

pra funcionar sem essas funções... você tem que e enviar todos os cabeçalhos antes de enviar qualquer saída para o browser!!!

ou seja... você tem que fazer todos os headers, setcookie... antes de usar qualquer print ou echo.. entende??

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