Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola, estou com o seguinte problema:
desenvolvi um portal de anúncios onde os anúncios tem um certo prazo para ficarem no ar, esse prazo esta registrado em uma tabela do banco de dados chamada "planos", e nos anúncios tem a data de aprovação do anuncio na tabela "anuncio", e quero fazer com que o anuncio seja exibido somente se estiver dentro daquele prazo.
Ex das tabelas:
Tabela PLANO:
prazo: 15
* onde 15 e = 15 dias
Tabela ANUNCIO
data_aprovacao: 2012-19-11
Quero que quando passar o prazo de 15 dias do anuncio, o mesmo não apareça mais no site.
Se puderem me ajudar. Obrigado
Desculpe a Ignorancia shuauhs, resolvido.
So precisava inverter Ymd
echo que e isso que você quer
Select * From tabela Where Adddate(data_aprovada,15) <= data_final
Opa,
A lógica do funcionamento é simples.
Com essas duas informações, você faz um loop para pegar a data de cada anuncio.
Tendo a data e o prazo, você vai usar a função mktime do php: http://php.net/manual/en/function.mktime.php
Esta função mktime servirá para que nós possamos somar o prazo a data do anuncio, ou seja, se a data do nosso anuncio é para iniciar em 20-11-2012 e temos o prazo de 15 dias, o anuncio deverá sair do ar no dia 05-12-2012, correto ?
Para somar dias a uma data, nós podemos fazer da seguinte forma:
$time = mktime(24*prazo, 0, 0, mes, dia, ano);
Aqui essa multiplicação 24prazo corresponde ao número de horas de um dia (24) o numero de dias que precisa ser somado.
Os dois zeros subsequentes, correspondem aos minutos e segundos, no nosso caso não precisamos alterar.
Após isso, é preciso separar a data do anuncio em dia - mês - ano e preencher com os números abaixo.
Espero ter ajudado.
Abs!