PDA

Pogčedajte punu verziju : rasclanjivanje datumskog polja iz baze


pele
17. 12. 2007., 08:20
MySql
php

U bazi u datumskom polju imam upisan datum
npr. : 2007-12-05
--------------
... posle ispisa dobijam:
$x=row['datum'];
--------------

kako da posebno izvucem iz baze i dobijem:
$a=2007 // god.
$b=12 //mes.
$c=05 //dan

pokusao sam sa explode, ali nisam uspeo.


potrebno mi je da bih omogucio korisniku editovanje postojeceg tj. da mu
ponudim kao opciju da mu se prvo pojavi vec upisn datum u poljima

Hvala

Ilija Studen
17. 12. 2007., 10:12
<?php

function explode_date($str) {
$parts = explode('-', $str);
foreach($parts as $k => $v) {
$parts[$k] = (integer) $v;
}
return $parts;
}

list($year, $month, $day) = explode_date('2007-12-05');

print "Day: $day, Month: $month, Year: $year";

?>

dinke
17. 12. 2007., 10:22
@Ilija
Zasto jednostavno kad moze i komplikovano :)


list($year, $month, $day) = explode("-", $datum);


A mozes i direktno na nivou baze:


select year(datum) as godina, month(datum) as mesec, day(datum) as dan
from tabela

Ilija Studen
17. 12. 2007., 10:39
Zasto jednostavno kad moze i komplikovano :)

Volim da su mi podaci u odgovarajućem tipu :) Detalji...

Btw, ovo iz baze je još i najlepše rešenje. Samo je malo nepraktično ako ima dosta upita, ali ako mu treba samo na par mesta najbolje da ide tako.

cvele
17. 12. 2007., 11:06
ako i nisu u pravom formatu mozes recimo:

select year(str_to_date(datum, '%Y-%m-%d')) as godina,
month(str_to_date(datum, '%Y-%m-%d')) as mesec,
dayofmonth(str_to_date(datum, '%Y-%m-%d')) as dan
from tabela

pele
17. 12. 2007., 12:39
ako i nisu u pravom formatu mozes recimo:

select year(str_to_date(datum, '%Y-%m-%d')) as godina,
month(str_to_date(datum, '%Y-%m-%d')) as mesec,
dayofmonth(str_to_date(datum, '%Y-%m-%d')) as dan
from tabela








Hvala svima