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

PHP Warning:  session_start()


João Vitor Tornisiello Trevisan

Pergunta

Eu estou com o famoso problema "PHP Warning:  session_start()"

Mensagem completado do erro:

[05-Apr-2018 19:25:33 UTC] PHP Warning:  session_start(): Cannot send session cache limiter - headers already sent (output started at /home/insideau/app.insideautomacao.com.br/config.php:1) in /home/insideau/app.insideautomacao.com.br/inc/database/database.php on line 4

Isso está impedindo que eu redirecione a página. Alias, nenhuma página da aplicação está redirecionando.

Já tentei usar ob_start(); ob_end_flush(); | Já tentei usar if (session_status() == PHP_SESSION_NONE) session_start();

Já revi fechando de <php ?> ou espaçamentos, ou echo, prints ets.

E isso só ocorre no servidor. Localhost não acontece. Alguma ideia? Obrigado

------------------ Basicamente meu código é

save(ENTITIES, $unidade_medida); //Acessa o database.php

header('location: index.php'. ($_SESSION['message'] != "" ? "?error_msg=".$_SESSION['message'] : "")); //não funciona

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Bom dia!

Sei que disse ter tirado os espaços, mas eu tive esse mesmo problema e era ainda um espaço criado por um caractere invisível, e a solução que me foi dada era abrir meu arquivo PHP no Notepad++, ir no menu Formatar e clicar na opção Converter para UTF8(sem BOM).

Salvei, subi o arquivo novamente no servidor e funcionou! 

Link para o comentário
Compartilhar em outros sites

  • 0

Não sei se entendi bem sua pergunta, mas me refiro ao arquivo PHP que aparece na descrição do erro

started at /home/insideau/app.insideautomacao.com.br/config.php:1) in /home/insideau/app.insideautomacao.com.br/inc/database/database.php on line 4

Ou Config.php linha 1 ou database.php linha 4

Mas se em ambos os casos você fez o procedimento que eu falei, não sei o que pode ser, pois comigo deu erro na linha 1 e era isso.

Link para o comentário
Compartilhar em outros sites

  • 0

Então, eu não entendo muito de php. Eu vou ver o que você falou. Mas talvez seja na maneira como eu organizei o projeto.

Eu tenho a seguinte hierarquia: (em lugares li que poderia ser problema de sessao)

 

index.php inclui meu template.php, 

template.php inclui permissoes.php (que usa sessao e abre ela [session_start]) 

template.php requer menu.php (que usa sessao, mas não abre ela)

template.php usa os dados de permissoes e de menu (usa sessao mas n abre ela)

 

index.php chama functions.php, que chama o database.php

database.php (usa sessao, e abre sessao lá)

 

o que acha?

Link para o comentário
Compartilhar em outros sites

  • 0
Em 05/04/2018 at 16:47, João Vitor Tornisiello Trevisan disse:

Eu estou com o famoso problema "PHP Warning:  session_start()"

Mensagem completado do erro:

[05-Apr-2018 19:25:33 UTC] PHP Warning:  session_start(): Cannot send session cache limiter - headers already sent (output started at /home/insideau/app.insideautomacao.com.br/config.php:1) in /home/insideau/app.insideautomacao.com.br/inc/database/database.php on line 4

Isso está impedindo que eu redirecione a página. Alias, nenhuma página da aplicação está redirecionando.

Já tentei usar ob_start(); ob_end_flush(); | Já tentei usar if (session_status() == PHP_SESSION_NONE) session_start();

Já revi fechando de <php ?> ou espaçamentos, ou echo, prints ets.

E isso só ocorre no servidor. Localhost não acontece. Alguma ideia? Obrigado

------------------ Basicamente meu código é

save(ENTITIES, $unidade_medida); //Acessa o database.php

header('location: index.php'. ($_SESSION['message'] != "" ? "?error_msg=".$_SESSION['message'] : "")); //não funciona

Caro João Vitor

insira essa linha no início do seu código:

<?php
    if(!isset($_SESSION)){ 
        session_start(); 
    } 
?>

Link para o comentário
Compartilhar em outros sites

  • 0

olá, coloquei isso nos 3 lugares que inicio sessão.

ele ainda está com o problema ao redirecionar

segue o error log :

[10-Apr-2018 17:20:13 UTC] PHP Warning:  session_start(): Cannot send session cache limiter - headers already sent (output started at /home/insideau/app.insideautomacao.com.br/config.php:1) in /home/insideau/app.insideautomacao.com.br/inc/database/database.php on line 4
[10-Apr-2018 17:20:15 UTC] PHP Warning:  session_start(): Cannot send session cache limiter - headers already sent (output started at /home/insideau/app.insideautomacao.com.br/config.php:1) in /home/insideau/app.insideautomacao.com.br/inc/database/database.php on line 4
[10-Apr-2018 17:20:18 UTC] PHP Warning:  session_start(): Cannot send session cache limiter - headers already sent (output started at /home/insideau/app.insideautomacao.com.br/config.php:1) in /home/insideau/app.insideautomacao.com.br/inc/database/database.php on line 4
[10-Apr-2018 17:20:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/insideau/app.insideautomacao.com.br/config.php:1) in /home/insideau/app.insideautomacao.com.br/src/cadastro/unidades-de-medida/functions.php on line 35
 

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