Siemka, dodałem do tabeli INT który oznacza ile dni pewnego przywileju pozostało, jak mogę codziennie decremetować tą wartość o 1? ?
Nie lepiej zapisać moment w którym rekord został dodany? Wtedy gdy wchodzisz na stronę, sprawdzasz ile dni minęło od tego czasu i robisz co tam chcesz.
Czasami widzę też podobne rozwiązanie, ale rozwiązanie trochę odwrotnie tj. zapisujesz datę kiedy dane odliczanie ma się skończyć, w sumie podobne, ale wtedy nie trzeba nic odejmować. Szczególnie przydane jeżeli mówimy np. o dostępnie premium do jakiejś części witryny.
No dobra, to wtedy jak?
przy czym w $return jest informacja o ile dni dodać do obecnej przypisanej tam wartości :)
mysql_query("UPDATE shops SET ads=NOW()+'ADDDATE($return)' WHERE login='$nickname'");
tzn. jak zrobić to coś a'la premium ?
dodanie znacznika <code class="php">
- @furious programming
Nie chciałbym strzelać oczywistościami jeżeli już to wiesz, ale data przechowywana jest, najczęściej, w postaci ilości sekund które minęło od 1 stycznia 1970 roku 00:00:00. W tym momencie moim zdaniem staje się oczywiste jak tym operować. Nie pamiętam już dokładnie funkcji w php, więc więcej Ci niestety nie pomogę. Btw zainteresuj się PDO, bo Twój sposób operowania na bazie nie jest specjalnie bezpieczny.
Edit: Chyba coś takiego
if($premium_end > time())
$premium_end += $additional_premium_period_in_seconds;
else
$premium_end = time() + $additional_premium_period_in_seconds;
query...