Kerth
10.11.2013, 10:20:42
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
10.11.2013, 10:30:02
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
10.11.2013, 13:51:28
Ale jak skonstruować takie zapytanie, żeby sprawdzało czy aktualna data jest inna niż ta w bazie? Czy coś takiego będzie dobre?
SELECT IFNULL(DATEDIFF(Czas_vipa,NOW()),'-30') FROM `Gracze` WHERE `Vip` = '1' LIMIT 1