Zadejte hledaný výraz...

Práce s datem

Michales
verified
rating uzivatele
(5 hodnocení)
24. 4. 2013 16:04:13
Potřeboval bych poradit jak vyřešit tuto funkci.
Mám formulář kam zadam datum ve formátu DD.MM.YY
Po kliku na tlačítko ok by to mělo vypsat datum který byl zadaný + pokračovat v datumu s přičítáním dalšího dne.
Příklad:
Zadám 24.04.2013 kliknu na ok a vypíše mi:
24.04.2013
25.04.2013
26.04.2013
27.04.2013
28.04.2013
29.04.2013
30.04.2013
01.05.2013
.....
....
...
10.05.2013
Jde to nějak vyřešit pomocí funkce php?
Děkuji za odpověď případně za nějaký návrh.
24. 4. 2013 16:04:13
https://webtrh.cz/diskuse/prace-s-datem/#reply894608
Petyk
verified
rating uzivatele
(3 hodnocení)
24. 4. 2013 16:08:57
for($i = 0; $i <= 10; $i++)
echo date('d.m.Y', strtotime('24.04.2013 +' . $i . ' day')). '
';
24. 4. 2013 16:08:57
https://webtrh.cz/diskuse/prace-s-datem/#reply894607
P-ierre
verified
rating uzivatele
(43 hodnocení)
24. 4. 2013 16:11:27
Na tohle se ti nejspíš bude hodit funkce strtotime() - řeší i počet dní v měsíci a přestupné roky. Konkrétně asi budeš používat něco ve stylu:
//edit: Tak Petyk byl rychlejší.
24. 4. 2013 16:11:27
https://webtrh.cz/diskuse/prace-s-datem/#reply894606
Michales
verified
rating uzivatele
(5 hodnocení)
24. 4. 2013 16:12:55
Děkuji
ale koukám že je tam datum zadané, já bych potřeboval aby se datum zadávalo do formuláře a následně by bylo zpracováno.
Získavalo by se s adresy např. www...........?teams=8&datum=24.04.2013
24. 4. 2013 16:12:55
https://webtrh.cz/diskuse/prace-s-datem/#reply894605
Petyk
verified
rating uzivatele
(3 hodnocení)
24. 4. 2013 16:14:27
for($i = 0; $i <= 10; $i++)
echo date('d.m.Y', strtotime($_GET . ' +' . $i . ' day')). '
';
24. 4. 2013 16:14:27
https://webtrh.cz/diskuse/prace-s-datem/#reply894604
Michales
verified
rating uzivatele
(5 hodnocení)
24. 4. 2013 16:18:38
Děkuji, perfektní.
24. 4. 2013 16:18:38
https://webtrh.cz/diskuse/prace-s-datem/#reply894603
ViPErCZ
verified
rating uzivatele
(21 hodnocení)
24. 4. 2013 17:28:26
Co takhle to udělat objektově... class DateTime: http://php.net/manual/en/class.datetime.php :-)
24. 4. 2013 17:28:26
https://webtrh.cz/diskuse/prace-s-datem/#reply894602
Michales
verified
rating uzivatele
(5 hodnocení)
24. 4. 2013 18:05:27
PHP moc neumím takže pro mě španělská vesnice.
24. 4. 2013 18:05:27
https://webtrh.cz/diskuse/prace-s-datem/#reply894601
Vít Michalek
verified
rating uzivatele
(14 hodnocení)
24. 4. 2013 20:37:48
Viper*cz*: proč všude cpát objekty, ne vždy je to lepší řešení
24. 4. 2013 20:37:48
https://webtrh.cz/diskuse/prace-s-datem/#reply894600
Kovboj
verified
rating uzivatele
(13 hodnocení)
25. 4. 2013 12:12:20
Pokud s tím datumem budeš třeba interne pracovat v sekundách pak můžeš při tom výpisu použít i něco ve smyslu date('d.m.Y',$datum+($den * 86400))
25. 4. 2013 12:12:20
https://webtrh.cz/diskuse/prace-s-datem/#reply894599
Ještě bych položil otázku, jak je udělaná validace vstupu (nejjednodušší je asi zkusit, zda projde strtotime), případně zda se s datumem ještě někde pracuje způsobem, že se vstupní řetězec rozděluje na jednotlivé části - den, měsíc, rok. Pokud se to někde rozděluje na části, je dobrá funkce mktime, kam se zadávají jednotlivé části datumu a ona z nich vytvoří timestamp. Také funguje inteligentně (prakticky na tom inteligentního nic není, prostě to spočítá matematicky stylem co psal Kovboj), když zadám den=32 a měsíc=1, tak správně vylze 1.2.
cca:
25. 4. 2013 12:32:19
https://webtrh.cz/diskuse/prace-s-datem/#reply894598
Michales
verified
rating uzivatele
(5 hodnocení)
25. 4. 2013 17:33:35
Děkuji všem, tohle:
for($i = 0; $i <= 10; $i++)
echo date('d.m.Y', strtotime($_GET . ' +' . $i . ' day')). '
';
přesně funguje tak jak jsem potřeboval.
Ještě jednou díky.
25. 4. 2013 17:33:35
https://webtrh.cz/diskuse/prace-s-datem/#reply894597
Kovboj
verified
rating uzivatele
(13 hodnocení)
25. 4. 2013 19:26:39
Napsal Michales;941987
Děkuji všem, tohle:
for($i = 0; $i <= 10; $i++)
echo date('d.m.Y', strtotime($_GET . ' +' . $i . ' day')). '
';
přesně funguje tak jak jsem potřeboval.
Ještě jednou díky.
Jasně že funguje, jen to oproti tomu co jsem psal já musí v každé smyčce 2x zpracovat funlci pro práci s datumem. Ta moje verze by to měla v každé smyčce jen jednou...
Na malým webu je to samozřejmě jedno, ale na druhou stranu i z malého se může stát časem velký a je zbytečné takhle plýtvat strojovým časem ;-)
25. 4. 2013 19:26:39
https://webtrh.cz/diskuse/prace-s-datem/#reply894596
Pro odpověď se přihlašte.
Přihlásit