Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 75

SESSION não funciona no servidor

03-10-2010 14:15

Olá a todos.

Bom galera tou pra ficar louco aqui por causa de $_SESSION. No meu localhost tudo funciona perfeitamente, no entanto, no servidor as SESSION simplesmente não são inicializadas.

Alguém sabe me dizer o que que está ocasionando isso ?! Abaixo estão os meus arquivos.

Verifica o usuário:
<?php if(basename($_SERVER["PHP_SELF"]) != "checkuser.php" and !empty($_POST) and $_SERVER['HTTP_REFERER']) { session_start(); ob_start(); $endereco = "http://localhost/ciep"; require_once "../conexao.php"; $cpf = ant_sql ($_POST["cpf"]); $senha = ant_sql ($_POST["senha"]); $check = ant_sql ($_POST['check']); $senha = md5("$senha"); $sql = "SELECT * FROM tbl_funcionarios WHERE cpf = '$cpf' AND senha='$senha'"; $resultado = mysql_query($sql) or die(mysql_error()); $registro = mysql_fetch_array($resultado); if(mysql_num_rows($resultado) <= 0) { echo "<script type = 'text/javascript'> location.href = '$endereco/adm/' </script>"; } elseif(mysql_num_rows($resultado) > 1) { echo "<script type = 'text/javascript'> location.href = '$endereco/adm/' </script>"; } elseif(mysql_num_rows($resultado) != 1) { echo "<script type = 'text/javascript'> location.href = '$endereco/adm/' </script>"; } elseif(mysql_num_rows($resultado) == 1 && $check == "ok") { $_SESSION["id"] = $registro['id']; $_SESSION["nome_func"] = $registro['nome']; $_SESSION["cpf"] = $cpf; $_SESSION["senha"] = $senha; setcookie("3e00afdb2ee8ca59758db1483a623b1f", "3e00afdb2ee8ca59758db1483a623b1f", time()+(30*8600)); echo "<script type = 'text/javascript'> location.href = '$endereco/adm/home/1' </script>"; } else if (mysql_num_rows($resultado) == 1 && $check == "") { $_SESSION["id"] = $registro['id']; $_SESSION["nome_func"] = $registro['nome']; $_SESSION["cpf"] = $cpf; $_SESSION["senha"] = $senha; echo "<script type = 'text/javascript'> location.href = '$endereco/adm/home/1' </script>"; } ob_end_flush(); } ?>

INDEX onde a session devia ser inicializada
session_start(); require_once "../conexao.php"; $endereco = "http://localhost/ciep"; if(ant_sql ($_SESSION['cpf']) || ant_sql ($_SESSION['senha']) || ant_sql ($_COOKIE['3e00afdb2ee8ca59758db1483a623b1f'] == true )) { require_once "topo-administracao.php"; require_once "menu-administracao.php"; require_once "home-administracao.php"; require_once "rodape-administracao.php"; } else { echo "<script type = 'text/javascript'> location.href = '$endereco/login' </script>"; }

Aonde está o ERRO aí ?!

Desde de já obrigado pela ajuda de todos.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

SESSION não funciona no servidor

03-10-2010 16:10

O session_start deve ser sempre a primeira linha do documento, mesmo antes de if, include, etc...
Uma única vez no documento.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 75

SESSION não funciona no servidor

03-10-2010 16:42

O session_start() está cima de qualquer coisa no meu código.

E dando um echo session_start(); exit; no meu index para onde sou redirecionado me aparece o número 1.
Então isso quer dizer que a SESSION está sendo inicializada correto ?!

Será que o problema está nas variáveis que não estão sendo passada no $_POST ?!

Porque dando um echo $_SESSION['cpf']; exit; no index para onde sou direcionado, nada aparece.
Mas como que faço para minha variáveis passarem corretamente ?!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

SESSION não funciona no servidor

03-10-2010 17:01

Esse exit mata as variáveis, ou seja, se você definir algo, depois usar o exit, será perdido.

Se vai trabalhar com session e valores passados por post, o início do documento deve estar assim:

<?php
session_start(); // inicia a session
extract($_POST); // extrai os valores do post / $_POST['var'] será igual a $var
...
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 75

SESSION não funciona no servidor

03-10-2010 17:08

Mas isso deve ser colocado no index para onde sou redirecionado após realizar o login o no arquivo que verifica o usuário ?!

Desde de já obrigado pela ajuda.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

SESSION não funciona no servidor

03-10-2010 17:11

Tem que se basear na lógica.

Se vai usar session, faz com que o session_start fique no documento base ( se tem include ) que será carregado. Se for receber valores do POST, usa o extract.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 75

SESSION não funciona no servidor

03-10-2010 17:42

Estou usando $_SESSION e o session_start() está no topo de meus arquivos.

No localhost, tudo funciona perfeitamente, no servidor é que as session não funciona, entendeu ?!

Será que o problema é no servidor ?! Porque no localhost, funciona perfeitamente.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

SESSION não funciona no servidor

04-10-2010 16:18

Geralmente acontece o contrário, a gente deixa um erro no arquivo, ai no servidor local passa direto, no servidor online não aceita.

Se possível posta o código para que eu possa testar.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 75

SESSION não funciona no servidor

05-10-2010 00:03

Olá web.

Acho que o problema era no servidor, pois relatei ao suporte o que estava acontecendo e horas depois voltou a funcionar.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17722
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

SESSION não funciona no servidor

05-10-2010 09:17

Boa.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado