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


Moderador: web

 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 28
Sexo: Masculino

popup com cookie

24-11-2011 10:05

bom galera nao é dúvida e uma ajuda mesmo, porque nao entendo naaaada de cookie, então acredito que preciso do código mesmo porque nao sei nem iniciar. Sei apenas contruir o popup.
oque eu preciso é o seguinte:
quando o usuario entrar em meu site abre um popup com alguns explicativos, essa janela tera de ser exibida de 5 em 5 dias....
helppppp.....

aguardo retorno e agradeço desde ja.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

24-11-2011 11:56

Segue um exemplo básico

<?php if(isset($_COOKIE['valor'])=="ok") { echo "já existe"; } else { $tempo_cookie = '60'; // tempo em segundos - 60 para um minuto setcookie('valor', 'ok', time()+($tempo_cookie)); echo "criando o cookie"; } ?>

Esse script faz o seguinte, verifica se o cookie já existe, se sim, fala que existe, se não, mostra o criando o cookie e cria ele.

No seu caso o script que vai abrir a popup vai entra no criando o ...

O tempo você tem que calcular quantos dias quer em segundos.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 28
Sexo: Masculino

popup com cookie

24-11-2011 19:16

ta o meu codigo é o seguinte, nao sei montar agora, eu tenho este codigo no css do site

USE A TAG CODE PARA SCRIPTS

/*banner flutuante*/ #popup { position: absolute; top: 30%; left: 30%; width: 300px; height: 150px; padding: 20px 20px 20px 20px; border-width: 2px; border-style: solid; background: #ffffa0; display: none; }

depois disso tenho o código que chama ele no site que é:

<script language="javascript" type="">function fechar(){ document.getElementById('popup').style.display = 'none'; } function abrir(){ document.getElementById('popup').style.display = 'block'; setTimeout ("fechar()", 6000); }</script> <body onload="abrir();"> <DIV id="popup" class="popup"> Conteúdo </DIV>

ai agora tenho que junta-lo com o seu código acima, como faço isso?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

24-11-2011 19:38

No script, onde está

echo "criando o cookie";

Vai entrar todo seu código ai, CSS e JavaScript

Não esquece de adicionar o \ antes de cada aspas dupla no seu código dentro do echo.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 28
Sexo: Masculino

popup com cookie

24-11-2011 20:24

Oi amigão ta ficando cada vez mais complicado para mim sei que é pedir muito mais teria como voce me mostrar como ficaria o codigo?

não entendi muito bem e tentei de tudo que eu imaginei,

te agradeço de coração.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

24-11-2011 21:56

Você tem o echo ai quando o cookie não foi criado ainda, ai começa assim

echo "...";

Seu código vai entrar ai, por exemplo

echo "<script language="javascript" type="">function fechar(){
document.getElementById(\'popup\').style.display = \'none\';
...

Só colocar \ antes do ' em todas aspas simples, no código que vai dentro do echo.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

24-11-2011 22:16

Tenho um problema parecido com a do adokmeurer só que no meu caso é um banner que abre um popup e esse popup tá abrindo com um cookie de 6 horas queria poder mudar isto, sabem se há alguma forma? Obrigado desde já.
O código do meu banner é o seguinte:
<script language="Javascript" type="text/javascript" src="http://www.cliquebanner.com/cgi-bin/mostra.cgi?contaXX=alanbr"></script>

0
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

24-11-2011 22:21

Web vi que na página popup.html que você me enviou anteriormente tem o seguinte:
<html> <head><?php if(isset($_COOKIE['valor'])=="ok") { echo "já existe"; } else { $tempo_cookie = '1'; // tempo em segundos - 60 para um minuto setcookie('valor', 'ok', time()+($tempo_cookie)); echo "criando o cookie";

bom mudei para 1 e ainda assim continua criando com 6 horas de validade e vejo que tem mais 3 opções "valor", "ok", "criando o cookie". Bom não sei se são opções editáveis mas se for pode ser isso que resolva meu problema certo?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

25-11-2011 09:11

$tempo_cookie é o tempo de duração que o cookie fica vivo, em segundos.

setcookie('valor', 'ok', time()+($tempo_cookie));

valor é o nome do cookie e ok é o valor salvo no cookie

Você pode alterar o que quiser, desde que a comparação do if seja relacionado ao nome e valor do cookie.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 10:10

Mas para efetivamente mudar o tempo de validade do cookie apenas devo editar o número entre ' '? Pois mudei como pode ver para 1 e mesmo assim continua sendo criado cookie de 6 horas. Há a possibilidade desse cookie que está sendo criado seja automático do banner e eu não possa altera-lo?
$tempo_cookie = '1'

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

25-11-2011 10:20

Eu fiz um teste aqui local e funcionou corretamente. Deixei o cookie com duração de 60 segundos. Carreguei o documento, e criou o cookie, assim que o cookie estava criado, "já existe", aguardei 60 segundos, depois tentei acessar o documento, e o cookie já não existia mais.

O que pode estar acontecendo ai é problema de não definir o parâmetro caminho no cookie

setcookie('valor', 'ok', time()+($tempo_cookie), '/');

Acima o caminho está para o diretório raiz. Tente dessa forma.

Fonte para definição do caminho onde o cookie será salvo
http://php.net/manual/pt_BR/function.setcookie.php
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 10:53

Bom eu adicionei o ,'/' na linha do setcookie do jeito que você fez só que ainda cria com cookie de 6 horas. Estou saindo para ir no hospital agora só devo voltar ao final da tarde, obrigado web tem me ajudado bastante.
Ótimo fórum!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

25-11-2011 11:04

Estou testando aqui no Firefox, talvez seu navegador esteja com dificuldade em deletar o cookie.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 11:19

Também uso o firefox para ser mais preciso uso a versão 8.0
0
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 11:28

Acabei de abrir o popup no IE8 e fui nos cookies e mesma coisa vencimento de 6 horas.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

25-11-2011 12:22

Como havia falado, estava testando o cookie somente baseado na navegação, mas, observei aqui no FF em Propriedades / Segurança, que o tempo mostrado não estava bem correto. Ai testei o seguinte:

setcookie('valor', 'ok', time()+(60*60*24*10));

10 equivale ao tempo de duração do script em dias. Criei o cookie via PHP, e verifiquei no navegador. E a data estava correta.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 18:47

Bom fiz o seguinte, testei das 2 formas:
$tempo_cookie = '1'; // tempo em segundos - 60 para um minuto setcookie('valor', 'ok', time()+(60*60*24*10),'/');

e removendo o ,'/'
$tempo_cookie = '1'; // tempo em segundos - 60 para um minuto setcookie('valor', 'ok', time()+(60*60*24*10));

E continua sendo criado cookie de 6 horas.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

25-11-2011 19:52

Onde você está vendo que o cookie tem o tempo de 6 horas? Se for pelo navegador Firefox, eu estou testando ele e está com o tempo correto.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 21:50

Estou vendo sim pelo FF olha a imagem.
Imagem
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

25-11-2011 22:09

Veja o teste que fiz agora

setcookie('valor', 'ok', time()+(60*60*24*1));

Essa linha faz o cookie durar 1 dia

Veja como é mostrado no navegador

Imagem
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 22:15

É cara realmente não sei, coloquei a linha de código igual a sua como pode ver na imagem abaixo mas continua do mesmo jeito criando cookie de 6 horas.

Imagem
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

25-11-2011 22:22

Eu estou testando aqui em localhost, não sei se esse virtualxp tem relação com isso.

Faz o seguinte:

Deleta o cookie no navegador, ai coloca essa linha no topo do script

date_default_timezone_set('America/Sao_Paulo');

Para ver se padroniza a data corretamente em um dia.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 22:26

Deixei assim:
<html> <head> <?php date_default_timezone_set('America/Sao_Paulo'); if(isset($_COOKIE['valor'])=="ok") { echo "já existe"; } else { $tempo_cookie = '1'; // tempo em segundos - 60 para um minuto setcookie('valor', 'ok', time()+(60*60*24*1)); echo "criando o cookie"; } ?> <script language="Javascript" type="text/javascript" src="http://www.cliquebanner.com/cgi-bin/mostra.cgi?contaXX=alanbr"></script> </head> <body></body> </html>

E mesmo assim continua :sweat:
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17582
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

popup com cookie

25-11-2011 22:31

Então o mais provável é esse virtualxp. Se você instalar o xampp no seu computador, vai obter o mesmo resultado que eu.

Também coloquei o arquivo de teste online, e testei aqui e está exatamente 1 dia a data de validade do cookie.

http://www.codigosnaweb.com/teste.php
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Mensagens: 38
Sexo: Masculino

popup com cookie

25-11-2011 22:42

To tentando criar na minha página da empresa mas por enquanto o popup ainda não abriu to tentando aqui.
0

Quem está online

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