Jump to content
Fórum Script Brasil
  • 0

Session_register (problema)


PHP_ZIMBA

Question

O galera estou com problema com o session;

Quando atualizo a página (F5) ele perde o valor registrado.

Estou fazendo assim:

PAGINA_FAZER_LOGIN.HTM (essa página chama o LOGIN.PHP)

campologin e camposenha

botão submit

-----

LOGIN.PHP

<?

include "../abertura.inc"; // .inc inclui a abertura

$resultado = mysql_query("select * from operador where lg_operador = '$campologin'");

$linhas = mysql_num_rows($resultado);

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

echo "Operador não encontrado'>";

}else{

if ($camposenha != mysql_result($resultado, 0, "sh_operador")){//confere a senha

echo "A Senha Não Confere";

}else{

$login_operador = $campologin;

$senha_operador = $camposenha;

session_start();

session_register("login_operador");

session_register("senha_operador");

header("Location: padrão.php?id=63"); (CHAMA A PÁGINA SECRETA = OPERADOR.PHP)

}

}

?>

-------------

-------------

OPERADOR.PHP ( ESSA PÁGINA CONSEGUE RESGATAR O NOME E A SENHA DAS SESSÕES,

MAS SE EU ATUALIZO A PÁGINA (F5) ELE PERDE ESSAS SESSÕES;

<?

include("../operador/valida_session_operador.php"); //INICIO PUXANDO OS DADOS DA VALIDA_SESSION_OPERADOR.PHP

?>

<HTML>

<?

session_start();

echo $HTTP_SESSION_VARS["login_operador"];

echo $HTTP_SESSION_VARS["senha_operador"];

?>

..TODO CONTEUDO DA PÁGINA

</HTML>

------------

------------

VALIDA_SESSION_OPERADOR.PHP (CREIO QUE O PROBLEMA ESTÁ AQUI)

(NESSA PAGINA EU VERIFICO SE O LOGIN E SENHA ESTÁ REGISTRADOS...)

<?

session_start();

if ((session_is_registered("login_operador") AND session_is_registered("senha_operador"))) {

session_register('login_operador', 'senha_operador');

} /*aqui primeiro ele checa para ver se exite essas Sessoes, e depois ele coloca o valor das sessoes nessas variaveis... para fazermos os testes!*/

else{

echo "Você precisa se logar";

exit();/*caso não tinha session.. quer dizer.. ele não logou*/

}

if(!(empty($login_operador)|| empty($senha_operador))){

include "../abertura.inc"; // .inc inclui a abertura

$sql= "select * from operador where lg_operador = 'maicon' and sh_operador= '999999'";

$ver=mysql_query($sql,$conexao); // envia os dados pro banco

$num = mysql_num_rows($ver);

if ($num == 0){ /*caso exista*/

session_unregister('login_operador');

session_unregister('senha_operador');

/*apaga a session que existia mas era errada..*/

exit();

}

}else{

session_unregister('login_operador');

session_unregister('senha_operador');

/*apaga a session que existia mas era errada..*/

Echo 'Você Não Efetuou Login';

exit();

}

?>

---------

---------

Gostaria de saber o erro que está ocorrendo...

Preciso fazer muito isso

obrigado. sad.gif

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Eu costumo, logo depois de setar a session, redirecionar para uma outra página....

Faça o mesmo e verifique se o valor foi perdido ou não...

Ahh e coloca o session_start(): antes de qualquer linha de código..

porque é um campo que fica no header do cabeçalho HTTP... e se você escrever depois que mandou o cabeçalho.. aí num funciona...

BELE???

Até+

cool.gif

Link to comment
Share on other sites

  • 0

Manual do php:

Cuidado

Se você quer que seu script funcione independentemente do uso de register_globals, você precisa usar a matriz $_SESSION já que $_SESSION é automaticamente registrada. Se o seu script usa session_register(), ele não irá funcionar em ambientes onde a diretiva de configuração register_globals esteja desabilitada.

Nota importante sobre register_globals:: Desde o PHP 4.2.0, o valor padrão para a diretiva register_globals é off. A comunidade do PHP encoraja a todos a não alterarem esta diretiva mas, ao invés, utilizar superglobals.

session_register

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...