Jump to content


Photo

Sistema De Banner Com Data De Entrada E Saída


  • Faça o login para participar
10 replies to this topic

#1 Daniel Jhonatan

Daniel Jhonatan

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado

Posted 28/05/2012, 23:30

Olá pessoal,
Estou montando um sistema de banner que tem duas datas, uma de entrada e outra de saída.

Acontece só funciona quanto a data de entrada e saída são do mesmo mês.

Exemplo que da certo:
entrada: 28/05/2012
saída: 31/05/2012

Exemplo que da errado:
entrada: 28/05/2012
saída: 01/06/2012

Vejam meu sql:
WHERE pagina_data_entrada <= '$hoje' AND pagina_data_saida >= '$hoje'

Alguém pode me dizer o que eu estou fazendo de errado?

#2 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 29/05/2012, 08:06

O que está chegando na $hoje?
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#3 Daniel Jhonatan

Daniel Jhonatan

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado

Posted 29/05/2012, 11:59

O que está chegando na $hoje?

A data de hoje.

$hoje = date('d/m/Y');



#4 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 29/05/2012, 12:16

Então está ai o problema. Você terá que usar o MONTH e o YEAR para calcular separadamente, mês e dia.
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#5 Daniel Jhonatan

Daniel Jhonatan

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado

Posted 29/05/2012, 12:28

Esse MONTH e o YEAR eu ainda não conheço.
Mas agora de uma olhada nesse sql por que parece que agora deu certo:
WHERE STR_TO_DATE('$hoje', '%d/%m/%Y') BETWEEN STR_TO_DATE(pagina_data_entrada, '%d/%m/%Y') AND STR_TO_DATE(pagina_data_saida, '%d/%m/%Y') ORDER BY pagina_ordem ASC
Lenbrando que $hoje esta guardando o dia de hoje: $hoje = date('d/m/Y');

#6 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 29/05/2012, 13:30

Mais agora separou os dias: %d/%m/%Y fazendo a pesquisa de item por item.
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#7 Daniel Jhonatan

Daniel Jhonatan

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado

Posted 29/05/2012, 15:04

Mais agora separou os dias: %d/%m/%Y fazendo a pesquisa de item por item.

O certo seria remover o sinal de "%" então? peguei esse código de um exemplo que encontrei na internet.
A única coisa que eu queria é controlar o dia de entrada e saída do banner.
E para isso eu criei na tabela dois campos char(10) para guardar essas duas datas.

#8 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 29/05/2012, 16:27

A única coisa que eu queria é controlar o dia de entrada e saída do banner.


Mais se controlar só o dia não vai calcular de um mês para outro, tem levar em conta o mês também.
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#9 Daniel Jhonatan

Daniel Jhonatan

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado

Posted 29/05/2012, 18:00


A única coisa que eu queria é controlar o dia de entrada e saída do banner.


Mais se controlar só o dia não vai calcular de um mês para outro, tem levar em conta o mês também.


Mas então como é que eu posso fazer isso?

#10 dery

dery

    Novato no fórum

  • Usuários
  • 23 posts
  • Sexo:Masculino
  • Localidade:Sumaré-/sp

Posted 31/05/2012, 10:12




A única coisa que eu queria é controlar o dia de entrada e saída do banner.


Mais se controlar só o dia não vai calcular de um mês para outro, tem levar em conta o mês também.


Mas então como é que eu posso fazer isso?


Olá, não sei se entendi bem mas se quer exibir um banner em um determinado período seria:

"SELECT * FROM banner WHERE '$hoje' BETWEEN pagina_data_entrada AND pagina_data_saida LIMIT 1";

Mas antes verifique se a variável '$hoje' está passando os dados no formato DATE "ano-mes-dia" e se na sua table os campos 'pagina_data_entrada' e 'pagina_data_entrada' se encontram no mesmo formato (DATE). Att =)


Edição feita por: dery, 31/05/2012, 10:15.


#11 Daniel Jhonatan

Daniel Jhonatan

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado

Posted 31/05/2012, 13:20





A única coisa que eu queria é controlar o dia de entrada e saída do banner.


Mais se controlar só o dia não vai calcular de um mês para outro, tem levar em conta o mês também.


Mas então como é que eu posso fazer isso?


Olá, não sei se entendi bem mas se quer exibir um banner em um determinado período seria:

"SELECT * FROM banner WHERE '$hoje' BETWEEN pagina_data_entrada AND pagina_data_saida LIMIT 1";

Mas antes verifique se a variável '$hoje' está passando os dados no formato DATE "ano-mes-dia" e se na sua table os campos 'pagina_data_entrada' e 'pagina_data_entrada' se encontram no mesmo formato (DATE). Att =)


Obrigado dery!
Minha data esta no formato brasileiro d/m/Y mas mesmo assim funciono.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq