Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Bierzące odejmowanie czasu.
Forum PHP.pl > Forum > Przedszkole
Kerth
Jak mam stworzyć coś takiego, że gdy dodaję do bazy danych gracza, który jest vipem i ustawiam mu czas vipa na 30 dni w formacie(0000-00-00 00:00:00). Czyli gdybym w tym momencie dodał komuś vipa to w bazie pojawiło by się 2013-11-10 10:21:00. I chcę, zeby od razu po dodaniu od tej daty zaczęły się odejmować na bierząco(zeby można było sprawdzić) 30 dni. Czyli ważność konta powinna się zakończyć 2013-12-10 10:21:00. I gdy dojdzie do tej daty, wykona się jakaś akcja(zabieranie vipa) Ma ktoś jakiś pomysł? Dodam, że nie szukam gotowego kodu, gdyż taki formularz umiem zrobić, lecz nie wiem jak sformułować zapytanie do bazy danych.
kujol
Lepiej zrobić trak, że przy logowaniu gracza skrypt sprawdza czy dzisiejsza data jest mniejsza od tej z bazy, jeśli jest równa to loguje jako zwykły gracz i odbiera vipa.

Kod
<?
$data="2008.11.17";  //aktualna data
$ile_dni = 30;  //dodaje do aktualnej daty
$nowa_data=strtotime("+ ".$ile_dni "
day",strtotime($data));
echo date ("d-m-Y", $nowa_data);
?>
Kerth
Ale jak skonstruować takie zapytanie, żeby sprawdzało czy aktualna data jest inna niż ta w bazie? Czy coś takiego będzie dobre?
  1. SELECT IFNULL(DATEDIFF(Czas_vipa,NOW()),'-30') FROM `Gracze` WHERE `Vip` = '1' LIMIT 1
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.