Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] problem z czasem, dodawanie sekund do czasu
otakon
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.06.2007

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


mam cos takiego:

  1. <?php
  2. $rok=date("Y",strtotime($zlapanadata));
  3. $miesiac=date("m",strtotime($zlapanadata));
  4. $dzien=date("d",strtotime($zlapanadata));
  5. $godziny = date("H",strtotime($zlapanadata))+$godzdodatkowe;
  6.  
  7. $minuty = date("i",strtotime($zlapanadata))+$mindodatkowe;
  8. $sekundy = date("s",strtotime($zlapanadata))+$sekdodatkowe;
  9. ?>


zmienne z dowiazaniami 'dodatkowe' do nazw jednostek maja zakres wartosci 0-59; opocz $godziny ktore maja 0-23;

gdzy juz otrzymam nowy czas zapisuje go do zmiennej $nowyczas;

  1. <?php
  2. $nowyczas=$rok."-".$miesiac."-".$dzien." ".$godziny.":".$minuty.":".$sekundy;
  3. ?>

zmienna jest wyswietlana aby spr. czy na pewno wszystko sie zgadza a pozniej jest zapisywana do bazy danych o typie 'datetime'

wszystko byloby dobrze gdybym ostatnio nie zobaczyl czegos takiego '2007-07-17 17:84:40' - mozna bylo to przewidziec zreszta.

Macie jakies pomysly, moze inaczej odpocztaku to zrobic? (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif) chodzi o dodanie czasu do daty i pozniej otrzymanie jej w tej samej postaci tzn. daty.

Probowalem to rozwiazac sprawdzajac ile np. zmienna $minuty wynosi po dodaniu czasu.dzielilem przez 60 ilosc otrzymana dodawalem do godzin a pozniej $minuty dzielilem przez % i reszte dodawalem do $minuty ALE
gdy zostawalo np. 3 to nie zgadzalo sie z formatem - 00 - (IMG:http://forum.php.pl/style_emoticons/default/dry.gif) i musialem pisac if'a, jezeli mniejsze od 9 to 09 itp.

Dodam jeszcze ze $godzdodatkowa,$mindodatkowe,$sekdodatkowe otrzymuje z wartosci ktora jest liczba sekund dzielac na pelne godziny minuty i reszte czyli sekundy. To chcial bym wiedziec takze czy jest jakis sposob aby cala liczbe sekund dodac do daty a ona juz sama sie wyliczy.

Prosze o pomoc.
Z gory dziekuje

Ten post edytował otakon 17.07.2007, 18:00:24
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Cosi*
post
Post #2





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 9.07.2007
Skąd: Dąbrowa Górnicza

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


Proponuję Ci przeczytać co nieco na temat tzw. Unix timestamp i tego używać. W skrócie - to jest data i czas zapisany w postaci liczby sekund, które upłynęły od 1 stycznia 1970. Wtedy możesz dodawać i odejmować, a wynik przekształcić w "normalną" datę/czas.
W podręczniku PHP znajdź polecenie mktime().
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 13:51