Wiadomość 3 dni przed zakończeniem usługi

2011-12-25 21:34:03 Post #1 gość_xxdrago

 
Witam, mam 3 wiadomości

OK
Za 3 dni wygaśnie
Wygaśnięty

Pobieram dane z bazy sekundy i jak moge pokazać , że za 3 dni wygaśnie usługa ja już z tym się poplątałem

Możesz coś doradzić?

2011-12-27 12:55:03 Post #2 nospor

 
Chcesz pobrać rekordy, które wygasną za 3 dni?
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html
Pierwszy przykład z brzegu:

Here is an example that uses date functions. The following query selects all rows with a date_col value from within the last 30 days:
mysql> SELECT something FROM tbl_name
-> WHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) <= date_col;

2011-12-27 15:26:16 Post #3 gość_xxdrago

 
Właśnie nie mam powiedzmy 3 zamówione usługi:

Aktywna - Czyli , że usługa jest ok.
Nieaktywna - Czyli , że usługa już nie jest aktywna ( wygasła ) .
Wygasa - Czyli , że usługa za 3 dni wygaśnie (będzie nie aktywna).

i teraz mam w pętli while if,elseif,else:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
// $dane["data"] to jest data_zamówienia + czas_trwaniauslugi np.30 dni

if ($dane["data"] < time()) // Sprawdza czy ok
{
echo 
'Aktywna';
}
elseif () 
// Ten warunek do wygasajacej
{
}
else
{
echo 
'nieatywna';
}

I teraz jak najlepiej zrobić z tym warunkiem , żeby nie liczyć

2011-12-27 16:08:15 Post #4 nospor

 
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
if ($dane["data"] >= time()) 

  if (
$dane["data"] >= + 3ni
     echo 
'Aktywna';
  else 
     echo 
'wygasa za 3 dni';

else 

echo 
'nieatywna'
}
?>

A 3 dni wyliczasz przy pomocy strtotime()

Odpowiedz