Session-star dando erro [RESOLVIDO]

1. Session-star dando erro [RESOLVIDO]

JHONES SENA
jhonessena

(usa Outra)

Enviado em 08/08/2012 - 17:27h

Boa Tarde!

Sou iniciante em php, e estou criando um pagina de login porem esta dando erro.
Segue o codigo:

<form id="loginForm" method="post" action="login.php" >
<fieldset id="body">
<fieldset>
<label for="email">Região</label>
<input type="text" name="regiao" id="email" />
</fieldset>
<fieldset>
<label for="password">Nome</label>
<input type="text" name="nome" id="password" />
</fieldset>
<fieldset>
<label for="password">CPF</label>
<input type="text" name="cpf" id="password" />
</fieldset>
<input type="submit" id="login" value="Entrar" />
</fieldset>
<span><a href="#">Esqueceu sua senha?</a></span>
</form>



login.php

<?php

// Recebemos os dados digitados pelo usuário

$regiao = $_POST['regiao'];
$nome = $_POST['nome'];
$cpf = $_POST['cpf'];

//Estabelecemos uma conexão com o Banco de Dados

include "conn.php";


//Criamos o comando que efetua a busca do Banco

$sql = "SELECT * FROM login WHERE cod = '$regiao' AND nome = '$nome' AND cpf LIKE '$cpf' LIMIT 0, 10";

$rs = mysql_query($sql);

$num = mysql_num_rows($rs);

if($num > 0)

{

//Retorna os dados do Banco

$rst = mysql_fetch_array($rs);

$id = $rst["codigo"];

$nome = $rst["nome"];



//Inicia a sessão

session_start();

//Registra os dados do usuário na sessão

$_SESSION["codigo"] = $id;

$_SESSION["nome"] = $nome;

$_SESSION["cpf"] = $cpf;

mysql_close($conn);

header('Location:area_restrita.php');

}

else

{

//Caso nenhuma linha seja retornada, emite o alerta e retorna

echo "<b>Nenhum usuário foi encontrado com os dados informados…retornando</b>";

echo "<meta http-equiv=’refresh’ content=’0;URL=index.php’>";

}

?>

area_restrita.php

<b><font size="+4" color="#F91509">Teste de conexção.</font></b>


<?php

//Inclui o arquivo de verificação

include_once("verifica.php");

?>

<h3>Olá: <b><?php echo $_SESSION['nome'] ?></h3>


verifica.php

<?php

//Inicia a sessão

session_start();

//Verifica se há dados ativos na sessão

if(empty($_SESSION["id"]) || empty($_SESSION["nome"]) || empty($_SESSION["cpf"]))

{

//Caso não exista dados registrados, exige login

header("Location:index.php");

}

?>


O erro que esta dano e este:

"Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/ieqmg/www/conn.php:2) in /home/ieqmg/www/login.php on line 47

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/ieqmg/www/conn.php:2) in /home/ieqmg/www/login.php on line 47

Warning: Cannot modify header information - headers already sent by (output started at /home/ieqmg/www/conn.php:2) in /home/ieqmg/www/login.php on line 63"


Alguem teria um dica para me passar, desde de já muito obrigado.

Jhones Sena


  


2. Re: Session-star dando erro [RESOLVIDO]

Victocha
victocha

(usa Ubuntu)

Enviado em 08/08/2012 - 17:55h

Amigo,infelizmente não posso ler seu tópico inteiro e analisa-lo adequadamente, mas aí fica uma dica:

Copie todos os códigos de todas as suas páginas, crie outros arquivos com o mesmo nome(de preferência), e cole os códigos.

Após feito isto, salve na pasta de seu servidor substituindo as outras.

Isto é para caso de sessão mal iniciada e inacabada.

Aproveite e acrescente o supressor de warrings do PHP:


error_reporting(0);


e veja se ele consegue logar ainda que com session quebrada.


Se não funcionar sinta-se a vontade e retorne

Abraços


3. Re: Session-star dando erro [RESOLVIDO]

Raimundo Alves Portela
rai3mb

(usa Outra)

Enviado em 09/08/2012 - 00:28h

O

session_start()

deve ser a primeira coisa a ser encontrada no seu código php e não deve ser declarada várias vezes, basta uma.... veja que está sendo reclamado que o header (cabeçalho do html não confundir com as tags <head>) já havia sido iniciado...


4. Re: Session-star dando erro [RESOLVIDO]

JHONES SENA
jhonessena

(usa Outra)

Enviado em 09/08/2012 - 12:37h

Muito obrigado a todos!

Deu certo..

Veja com ficou :

...
if(mysql_num_rows($qr) == 0):
echo '<script>alert("Dados errados")</script>';
echo '<script>history.back()</script>';
exit;
else:
session_start();
$_SESSION['id'] = $id;
$_SESSION['cpf'] = $cpfpront;

header("location:area_restrita.php");
endif;



endif;

mysql_close($link);

?>

Depois a outra pagina:

<?php

ob_start();
session_start();

if(!isset($_SESSION['id']) && !isset($_SESSION['cpf'])):
header("location:../index.php");
endif;
?>



Deus abençoes Vocês...






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts