Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]nawigacja po datach z url
dentopolis
post
Post #1





Grupa: Zarejestrowani
Postów: 252
Pomógł: 0
Dołączył: 14.08.2016

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


mam url: /index.php?data=2016-10-13

chciałbym przeskakiwać po datach klikając w linki -1 dzień, +1 dzień, -6 tyg, +6 tyg.

<?php
$getdata = $_GET['data'];
echo $getdata;

$date_format = 'Y-m-d';
$getminusoneday = strtotime('-1 day');
$getminussixweeks = strtotime('-6 weeks');
$getplusoneday = strtotime('+1 day');
$getplussixweeks = strtotime('+6 weeks');

#daty krótki format bez czasu
$today = date($date_format);
$minusoneday = date($date_format, $getminusoneday);
$minussixweeks = date($date_format, $getminussixweeks);
$plusoneday = date($date_format, $getplusoneday);
$plussixweeks = date($date_format, $getplussixweeks);
?>

teraz pobiera aktualną datę i względem niej liczy a chcę aby liczył względem daty z url (wtedy będzie można klikając np.+1 dzień przechodzić coraz dalej, teraz zatrzymuje się na dniu jutrzejszym)
Go to the top of the page
+Quote Post
Tomplus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 879
Pomógł: 230
Dołączył: 20.03.2005
Skąd: Będzin

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


WYkorzystaj DataTime

  1. $date = new DateTime('2001-04-30');
  2. $interval = new DateInterval('P1M');
  3.  
  4. $date->add($interval);
  5. echo $date->format('Y-m-d') . "\n"; //dodanie 1M od daty
  6.  
  7. $date->sub($interval);
  8. echo $date->format('Y-m-d') . "\n"; //odjęcie 1M od daty[w tym kodzie wynik daty będzie taki sam jak data wejściowa]
Go to the top of the page
+Quote Post
dentopolis
post
Post #3





Grupa: Zarejestrowani
Postów: 252
Pomógł: 0
Dołączył: 14.08.2016

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


nie o to chodzi. tu jest strona:
http://dentopolis.org/scr/index.php?lekarz...data=2016-10-13

link 'dzisiaj' działa dobrze.wraca do aktualnego dnia.ale chcę żeby przyciski działały na podstawie nie dzisiejszej daty ale daty z pola GET w url.
(to pozwoli na wielokrotne przechodzenie np +1 dzień)

Ten post edytował dentopolis 13.10.2016, 18:46:23
Go to the top of the page
+Quote Post
Tomplus
post
Post #4





Grupa: Zarejestrowani
Postów: 1 879
Pomógł: 230
Dołączył: 20.03.2005
Skąd: Będzin

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


To w czym problem?

zamiast podawać w parametrze datę dzisiejszą to wrzucaj datę z GET

  1. $date = new DateTime($_GET['data]);


i jeżeli $_GET['data] jest pusta, to wyrzuci datę z dnia dzisiejszego, a następnie kolejne funkcje utworzą daty o 1 dzień większą, 7 dni większą, o miesiąc większy i datę która będzie z 6M.
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: 24.08.2025 - 13:33