Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Desenvolvi um sistema de login e ele estava rodando beleza então resolvi mudar de servidor.. quando mudei de servidor o sistema só conseguia se logar pelo firefox, teste em localhost e logou no internet explorer, chrome e no firefox mais quando coloco no servidor só loga no firefox, bastante estranho... então vi que o problema é que no internet explorer e no chrome não criava o cookie, fiz um código de teste somente com a criação de um cookie e só criou no firefox, alguém sabe o que pode ser isso?
<?php
setcookie(adson, 3, time()+3600*1);
echo $_COOKIE['adson'];
?>Então é estranho, no server o sistema só loga no firefox, fiz novos testes e vi que só consigo criar o cookie nos 3 navegadores se eu retirar o time()+3600*1...
Só funciona no servidor se eu retirar o tempo de vida do cookie, mesmo assim continua sem explicação esse problema.
Alguma idéia?
Qual a lógica em se multiplicar algo por 1?
Já que foi observado que o problema pode residir na chamada da função, tente passar o parâmetro como um valor literal:
<?php
$exp = time()+3600;
setcookie('nome','valor',$exp);
Certifique-se de ter as mensagens de erro habilitadas.
Nota: Isso aqui
>
<?php
setcookie(adson, 3, time()+3600*1);
echo $_COOKIE['adson'];
?>
NÃO irá funcionar na primeira exibição da página, apenas depois de um *refresh*Irei fazer o teste, depois coloco aqui a resposta, valeu.
Evandro fiz o teste e deu certo dessa maneira, agora só fiquei meio confuso pq isso só deu pal no internet explorer e no chrome, mais tudo bem obg pela força, abraços...
utilize todos os parametros do cookie...
setcookie('nome', 'valor', tempo, '/', '.dominio.com.br')
Mais informações aqui.
Amigo não tem muito sentido esta questão.
Se você testou via localhost no IE, FireFox e Chrome e ele logou,
Porque quando você testa no servidor de hospedagem o problema passa
a ser o navegador e não alguma configuração do server? :huh:
Abraços.