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

[Duvida] Erro na sessão


LuanB

Pergunta

Olá , esse é o meu primeiro post , vim tentar tirar uma duvida minha sobre sessão ...

pode ser uma duvida meio inutil , mas não deem bola , sou iniciante ainda ^^

bom , estava fazendo meu exercicio do curso de php que estou fazendo e pedia para uma hora ,

colocar todos os dados do formulario que fiz em html em uma matriz chamada dados , depois gravar

a matriz em uma sessão .

Eu fiz isso do jeito que achei que era para ser feito .

veja o código todo :

<html>

<head>

<title> Atividade 2 PHP UH . </title>

</head>

<body>

<?php

$nome = $_POST['nome'];

$endereço = $_POST['endereço'];

$cidade = $_POST['cidade'];

$uf = $_POST['uf'];

$cep = $_POST['cep'];

$telefone = $_POST['telefone'];

$idade = $_POST['idade'];

$SexoM = $_POST['m'];

$SexoF = $_POST['f'];

if(strlen($nome or $endereço or $cidade or $uf or $cep or $telefone or $idade) < 1) {

echo "<center> Erro , Preencha todos os campos . </center>" ;}

if(strlen($nome) < 10) {

echo "<center>Erro , o campo nome deve conter mais que 10 caracteres.</center>" ;}

if(strlen($uf) > 2) {

echo "<center>Erro , o campo UF foi preenchido incorretamente.</center>" ;}

if ($idade > 110)

exit ("<center>Muito Maduro.<center>");

if ($idade < 17)

exit ("<center>Muito Jovem.</center>");

else

{echo "<center><br><br><br>Informações:<br><br>Nome : <b>$nome </b><br>Endereço: <b>$endereço</b> <br>Cidade: $cidade <br>UF: $uf <br> CEP : $cep <br> Telefone : $telefone <br> Idade : $idade <br>" ;}

session_start() ;

$_SESSION["sessao] =

$dados = array ($nome , $endereço , $cidade , $uf , $cep , $telefone , $idade , $SexoM , $SexoF);

?>

mas quando executo o script dá o seguinte erro :

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/luanborelli/www/atividadephpi/form1.submit.php:6) in /home/luanborelli/www/atividadephpi/form1.submit.php on line 39 Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/luanborelli/www/atividadephpi/form1.submit.php:6) in /home/luanborelli/www/atividadephpi/form1.submit.php on line 39

ajudem se puderem ,

obrigado !

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Olá , esse é o meu primeiro post , vim tentar tirar uma duvida minha sobre sessão ...

pode ser uma duvida meio inutil , mas não deem bola , sou iniciante ainda ^^

bom , estava fazendo meu exercicio do curso de php que estou fazendo e pedia para uma hora ,

colocar todos os dados do formulario que fiz em html em uma matriz chamada dados , depois gravar

a matriz em uma sessão .

Eu fiz isso do jeito que achei que era para ser feito .

veja o código todo :

<html>

<head>

<title> Atividade 2 PHP UH . </title>

</head>

<body>

<?php

$nome = $_POST['nome'];

$endereço = $_POST['endereço'];

$cidade = $_POST['cidade'];

$uf = $_POST['uf'];

$cep = $_POST['cep'];

$telefone = $_POST['telefone'];

$idade = $_POST['idade'];

$SexoM = $_POST['m'];

$SexoF = $_POST['f'];

if(strlen($nome or $endereço or $cidade or $uf or $cep or $telefone or $idade) < 1) {

echo "<center> Erro , Preencha todos os campos . </center>" ;}

if(strlen($nome) < 10) {

echo "<center>Erro , o campo nome deve conter mais que 10 caracteres.</center>" ;}

if(strlen($uf) > 2) {

echo "<center>Erro , o campo UF foi preenchido incorretamente.</center>" ;}

if ($idade > 110)

exit ("<center>Muito Maduro.<center>");

if ($idade < 17)

exit ("<center>Muito Jovem.</center>");

else

{echo "<center><br><br><br>Informações:<br><br>Nome : <b>$nome </b><br>Endereço: <b>$endereço</b> <br>Cidade: $cidade <br>UF: $uf <br> CEP : $cep <br> Telefone : $telefone <br> Idade : $idade <br>" ;}

session_start() ;

$_SESSION["sessao] =

$dados = array ($nome , $endereço , $cidade , $uf , $cep , $telefone , $idade , $SexoM , $SexoF);

?>

mas quando executo o script dá o seguinte erro :

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/luanborelli/www/atividadephpi/form1.submit.php:6) in /home/luanborelli/www/atividadephpi/form1.submit.php on line 39 Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/luanborelli/www/atividadephpi/form1.submit.php:6) in /home/luanborelli/www/atividadephpi/form1.submit.php on line 39

ajudem se puderem ,

obrigado !

Algumas coisas que você deve considerar

Esqueça essa estoria de colocar caracteres especiais em nomes de variaveis tipo $endereço coloque $endereco

.

assim vale para os nomes de campos tanto em form (formularios) quanto em banco de dados.

Session_start()

no cabeçalio não no meio da pagina pois algumas versões aceitam outras geram erro então coloque no inicio que não haverá erro em nenhuma.

fiz algumas modificações mais tentei seguir seu raciocinio até mais.

<?php
Session_start();
?>
<html>
<head>
<title> Atividade 2 PHP UH . </title>
</head>
<body>
<?php
$nome =$_POST['nome'];
$endereco = $_POST['endereco'];
$cidade = $_POST['cidade'];
$uf = $_POST['uf'];
$cep = $_POST['cep'];
$telefone = $_POST['telefone'];
$idade = $_POST['idade'];
$SexoM = $_POST['m'];
$SexoF = $_POST['f'];

/* verifica se a variavel está varia */
if (empty($nome) or empty($endereco) or empty($cidade) or empty($uf) or empty($cep) or empty($telefone) or empty($idade) or ( empty($SexoM) && empty($SexoF) )  ){ echo "<center> Erro , Preencha todos os campos . </center>"; }
/* verifica se o nome é menor que 10 caracteres */
if(strlen($nome) < 10) {  echo "<center>Erro , o campo nome deve conter mais que 10 caracteres.</center>"; }
 /* verifica se o uf é diferente de dois caracteres */
if(strlen($uf) != 2) { echo "<center>Erro , o campo UF foi preenchido incorretamente.</center>"; }
/* verifica se a idade é maior que 110 anos */
if ($idade > 110){ echo "<center>Muito Maduro.<center>"; }
/* verifica se a idade é menor que 17 anos  */
if ($idade < 17){ "<center>Muito Jovem.</center>"; }
( !empty($SexoM) ) ? ( $Sexo=$SexoF) : ($Sexo=$SexoM);
/* criando array */
$dados=array('nome'=>$nome,
             'endereco'=>$endereco,
             'cidade'=>$cidade,
             'uf'=>$uf,
             'cep'=>$cep,
             'telefone'=>$telefone,
             'idade'=>$idade,
             'Sexo' => $Sexo);
$_SESSION['sessao']=$dados;
echo "<center><br><br><br>Informações:<br><br>Nome : <b>$nome </b><br>Endereço: <b>$endereco</b> <br>Cidade: $cidade <br>UF: $uf <br> CEP : $cep <br> Telefone : $telefone <br> Idade : $idade <br>";

qualquer duvida é so postar.

até mais.

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