Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Odejmowanie liczby "x" co 24 godziny, aż do "0".
sebekzosw
post 16.04.2007, 21:33:48
Post #1





Grupa: Zarejestrowani
Postów: 437
Pomógł: 42
Dołączył: 16.04.2007

Ostrzeżenie: (0%)
-----


Kod
<?php
$nick = "sebekzosw";
$name = "Sebastian";
$mail = "sebekzosw@o2.pl";
$rangs = "user";
$gg = "2719294";
$tlen = "sebekzosw";
$dateregister = "16-04-2007";
$avatar = "http://plprojekt.ovh.org/images/avatars/avatr%5B8%5D.jpg";
$www = "www.plprojekt.ovh.org";
$podpis = "Podpis";
$addmail = "tak";
$pass = "1a1dc91c907325c69271ddf0c944bc72";
$premium = "30";
?>



Chciałbym, żeby zawartość $premium = "30"; zmniejszała się o 1 co 24 godziny, aż do zera.

Bardzo prosiłbym o taki skrypt.

P.S.: Chciałbym jeszcze skrypt, który wyświetlał by, ile dana osoba ma Premium, i wyglądało by to tak:
Kod
Konto Premium (30 dni)


A jak zawartość $premium będzie równe "0", to będzie taki napis:
Kod
Darmowe konto


Z góry dzięki za pomoc.


EDIT

Zrobiłem skrypt, do wyświetlania, jak długo ktoś ma premium.
Kod
<?
include("sebekzosw.php");
?>

<?
if ($premium=="0") {
print("Darmowe konto");
}
else {
print("Konto Premium ($premium dni)");

}
?>


Interesuje mnie kod, a nie nazwy funkcji biggrin.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
KG-
post 16.04.2007, 22:07:10
Post #2





Grupa: Zarejestrowani
Postów: 61
Pomógł: 0
Dołączył: 30.05.2006

Ostrzeżenie: (0%)
-----


Po pierwsze takie informacje zapisuje się raczej w bazie, po drugie lepiej zapisać koniec premium jako liczbę sekund względem aktualnej daty, czyli teraz zapisujesz jednorazowo że $premium = time() + 30*24*3600; a potem wystarczy sprawdzać czy time() < $premium, inaczej musiałbyś użyć albo bazy + triggerów albo crontaba co dla tego zastosowania tak czy siak jest fatalnym rozwiazaniem.

Ten post edytował KG- 16.04.2007, 22:23:46
Go to the top of the page
+Quote Post
misiek172
post 18.04.2007, 21:29:54
Post #3





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Musi być baza MySQL z datą stworzenia,

I potem tylko obliczasz różnice daty aktualnej z data stworzenia i wychodzi ci ile jeszcze zostało czasu co do milisekundy. Ponieważ musisz date zapisać jako ilość sekund od 1970 czyli funkcja time(); i mktime();


--------------------
zmoderowano - waga i rozmiar
Go to the top of the page
+Quote Post
prz3kus
post 24.07.2007, 19:31:53
Post #4





Grupa: Zarejestrowani
Postów: 260
Pomógł: 30
Dołączył: 22.01.2007

Ostrzeżenie: (0%)
-----


Sorki że odnawiam taki stary temat ale w jaki sposob potem te sekundy ukazane przez funkcje z rodziny time ukazać jako normalna godzina znaczy w trybie godzina : minuta : sekunda
Go to the top of the page
+Quote Post
mike
post 24.07.2007, 19:34:05
Post #5





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Nie przepraszaj z odkopywanie tylko za niechęć do manuala tongue.gif
date()
Cytat
date — Formatuje lokalny czas/datę
Go to the top of the page
+Quote Post
prz3kus
post 25.07.2007, 13:45:20
Post #6





Grupa: Zarejestrowani
Postów: 260
Pomógł: 30
Dołączył: 22.01.2007

Ostrzeżenie: (0%)
-----


A to takie buty myślałem że date ino tworzy date nie wiedziałem że też ma taką funkcje wielkie dzieki moja gafa smile.gif

Kurcze mam kolejny problem z funkcją date mam taki kodzik:

  1. <?php
  2. $czas_lotu = 3600;
  3.  
  4. $czas1 = time() + $czas_lotu;
  5.  
  6. $czas2 = time();
  7.  
  8. $wynik = $czas1 - $czas2;
  9.  
  10. echo date( "G:i:s", $wynik); // i wynik zamisat godzina pokazuje mi dwie godziny czemu tak sie dzieje?
  11. ?>
Go to the top of the page
+Quote Post
abc667
post 25.07.2007, 14:15:45
Post #7





Grupa: Zarejestrowani
Postów: 229
Pomógł: 0
Dołączył: 29.05.2007

Ostrzeżenie: (0%)
-----


no bo date formatuje ci datę czyli np 1 sierpnia 2007, a nie oblicza ci jaki czas pozostał
imo jak obliczyć ile godzin, ile minut i ile sekund zostało to dzieci w podstawówce wiedzą. Czy to taka filozofia dzielić, mnożyć, dodawać i odejmować?
może ci się przydac jeszcze floor" title="Zobacz w manualu PHP" target="_manual
Go to the top of the page
+Quote Post
.radex
post 26.07.2007, 11:24:03
Post #8





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


albo CRON. Myślę jednak, że lepszym pomysłem jest obliczanie różnicy pomiędzy pomiędzy aktualną datą (lub wartością time lepiej), a tamtejszą.


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 31.07.2025 - 10:31