Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Provjera datuma i vremen

[es] :: PHP :: Provjera datuma i vremen

[ Pregleda: 2915 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

TeSiC

Član broj: 69948
Poruke: 98
79.143.175.*



Profil

icon Provjera datuma i vremen10.10.2008. u 12:46 - pre 188 meseci
Imam sledeci problem vezan za datum i vrijeme .
Recimo imam tabelu sa sledecim kolonama (tip polja za datum i vrijeme je DATETIME)
id | datetime1 | datetime2 | datetime3 | datetime4 | datetime5 |

treba mi neka funkcija koja ce da provjeri da li taj datum i vrijeme postoji u bazi (bilo gdje u bazi). ukoliko postoji onda treba da doda 20 minuta na to vrijeme.

ono sto mene zeza jeste da ni u jednom redu ni u jednoj koloni ne smiju biti dva ista datuma i vremena. takodje treba da podesim da ukoliko vrijeme predje 15h onda treba da se uzme sledeci datum(+1dan), a da... treba da izuzmem i vikende.

gledao sam PHP manual ali nista slicno nisam uspjeo da nadjem...

e sad datum i vrijeme mi izgleda ovako:
$termin1 = date("Y-d-m H:i:s", mktime(7, 30, 0, $mjesec , $dan, $godina));

i to fino sljaka..tj. unosi se u bazu, ali imam onaj problem od gore

ima li ko resenje ili upute za ovako nesto...neki link, tutorijal...

pozdrav
tesic
 
Odgovor na temu

vecitiKrivac
Kv

Član broj: 61914
Poruke: 44
79.101.44.*



Profil

icon Re: Provjera datuma i vremen11.10.2008. u 08:28 - pre 188 meseci
Mislim da u manual-u ne postoji ni jedna funkcija koja ce odmah da resi tvoj problem.
Citat:
treba mi neka funkcija koja ce da provjeri da li taj datum i vrijeme postoji u bazi (bilo gdje u bazi). ukoliko postoji onda treba da doda 20 minuta na to vrijeme.

Code:

$sql = "SELECT COUNT(*) FROM `tabela` WHERE datetime1 = '$termin' OR datetime2 = '$termin' OR datetime3 = '$termin' OR datetime4 = '$termin' OR  datetime5 = '$termin'";

i ukoliko je brojac veci od 0 onda kreiras novi datum
$terminNew = date("Y-d-m H:i:s", mktime($sat, ($minut + 20), $sekunda, $mjesec , $dan, $godina));
i taj datum uneses u bazu

Citat:

ono sto mene zeza jeste da ni u jednom redu ni u jednoj koloni ne smiju biti dva ista datuma i vremena. takodje treba da podesim da ukoliko vrijeme predje 15h onda treba da se uzme sledeci datum(+1dan), a da... treba da izuzmem i vikende.

Neznam sustinu problema, ali ukoliko u jednom redu ili jednoj koloni ne sme da bude isto vreme i isti datum ti mozes da nastelujes koji minut gore dole kao na prethodnom primeru. Znaci ceo postupak ponavljas (samo ne povecavas za 20 min, nego ga smanji za 30 sec) sve dok ne dobijes trazeni datum i vreme.
Za podesavanje dana ukoliko je veci od 15 h. To dobijes jednostavnim ispitivanjem tog datuma
Code:

if ($sat > 15)
{
$terminNew = date("Y-d-m H:i:s", mktime($sat, $minut, $sekunda, $mjesec , ($dan + 1), $godina));
}
if (date ("N", mktime ($sat, $minut, $sekund, $mjesec, $dan, $godina)) == 6) // za subotu
{
$terminNew = date("Y-d-m H:i:s", mktime($sat, $minut, $sekunda, $mjesec , ($dan + 1), $godina));
}
elseif (date ("N", mktime ($sat, $minut, $sekunda, $mjesec, $dan, $godina)) == 7) // za nedelju
{
$terminNew = date("Y-d-m H:i:s", mktime($sat, $minut, $sekunda, $mjesec , ($dan + 2), $godina));
}


Neznam da li ce resiti taj problem, makar sam pokusao da pomognem. Toliko od mene, pozdrav 8-)
Eheeh ehhehe
 
Odgovor na temu

TeSiC

Član broj: 69948
Poruke: 98
62.68.104.*



Profil

icon Re: Provjera datuma i vremen11.10.2008. u 17:07 - pre 188 meseci
e hvala ti mnogo...znam da ne postoji fukncija koja ce sve to da mi radi, ali si me bar usmjerio gdje da gledam i da kopam :)

pazi sta mi u principu treba. baza mi je ovakva
id | ime | datetime1 | datetime2 | datetime3 | datetime4 | datetime5 | (pa recimo imam sledece unose u bazi)
1 | stevo |22.01.2006 07:30 | 22.02.2006 07:30 | 22.03.2006 07:30 | 22.04.2006 07:30 | 22.05.2006 07:30 |
2 | perkan |22.12.2005 07:30 | 22.01.2006 07:30 | 22.02.2006 07:30 | 22.03.2006 07:30 | 22.04.2006 07:30 |

(ukoliko je isti datum i vrijeme treba da se pomjeri za par minuta naprijed npr. 15min)

Aplikacija sluzi za zakazivanje termina sastanaka.
I treba da odredi sledece:

Na prvu stranicu unosim ime i prezime osobe, osnovne podatke, i datum prvog zakazanog sastanka (podrazumjevano vrijeme je 07:30), (posto se zna tacan broj sastanaka) na osnovu prvog sastanka skripta izbacuje datume i vrijeme svih narednih sastanaka (sastanci su na svakih 15 dana).
Ukoliko se desi recimo da se prvi sastanak KOMITENTA A, i peti sastanak KOMITENTA B poklapaju vrijeme treba da se pomjeri za 15-20minuta naprijed...

Jebem li ga ala sam zapetljao

Pozdrav
Tesic


PS
vecitiKrivac HVALA TI MNOGO
 
Odgovor na temu

357_97

Član broj: 53056
Poruke: 104
*.eunet.yu.



+5 Profil

icon Re: Provjera datuma i vremen12.10.2008. u 00:58 - pre 188 meseci
Citat:
treba mi neka funkcija koja ce da provjeri da li taj datum i vrijeme postoji u bazi (bilo gdje u bazi). ukoliko postoji onda treba da doda 20 minuta na to vrijeme.

Gorni problem resava sledeci upit
Code:
UPDATE tbl_name SET ts_column = date_add(ts_column, INTERVAL 20 DAY) WHERE date_format(ts_column,'Y-d-m H:i:s') = 'php_date_string'
-- tbl_name -> ime tabele
-- ts_column -> timestamp data
-- php_date_string -> php date string
 
Odgovor na temu

[es] :: PHP :: Provjera datuma i vremen

[ Pregleda: 2915 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.