Toon posts:

[PHP]timestamp van begin tot einde maand

Pagina: 1
Acties:
  • 152 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik wil van 1 maand de timestamps zodat ik in een DB alle waarden van deze maand kan printen.

Ik heb nu iets van:

$date1 = mktime(0,0,0,date("j",mktime()),1,date("y",mktime()));
$date2 = mktime(0,0,0,date("j",mktime()),31,date("y",mktime()));

Maar ik wil dus van 1 maand alles, dus zelfs de laatste seconden, hoe kan ik dat het beste doen?

  • Bender
  • Registratie: Augustus 2000
  • Laatst online: 17-08 16:09
uit een ddatabse?

ik zou het zoiets doen:

$row[time] is dus de tijd uit je db

if (date(m, $row[time]) == date(m)) echo "";

Verwijderd

Topicstarter
Nee dat kan niet:

ik wil dit doen:


$maand_begin = iets
$maand_eind = iets

SELECT * FROM stats WHERE timestamp >='$maand_begin' AND timestamp <='$maand_eind'

  • RdeTuinman
  • Registratie: Mei 2001
  • Laatst online: 16-08 07:25
Daar heb je hele date en time functies voor in MySQL!

dus ff op www.mysql.com zoeken naar date ofzow ;)

[edit]
(alleen heb je idd misschien het probleem van unix-timestamps en de datetime van mysql. Beetje jammer....)

Verwijderd

Topicstarter
Daar heb ik dus niets aan omdat ik daar al gekeken heb en er niet uit kom...

Verwijderd

Een klein detail..
PHP:
1
<?$date2 = mktime(0,0,0,date("j",mktime()),31,date("y",mktime()));?>

Stel nu dat je de maand Februari moet hebben, februari gaat maar tot de 28e


Misschien moet je even in de MySQL manual zoeken naar wildcards ik denk dar die wel nuttig zijn in dit geval.

Verwijderd

Topicstarter
Zie hierboven, als ik het dus wist zou ik het niet vragen...

  • Nibbles
  • Registratie: Maart 2000
  • Laatst online: 16-04 12:46

Nibbles

just nibb it

Op dinsdag 25 juni 2002 23:15 schreef xuimper het volgende:
[..]

Maar ik wil dus van 1 maand alles, dus zelfs de laatste seconden, hoe kan ik dat het beste doen?
Je wil ALLE timestamps van die maand hebben?

Dat zijn er dus maar liefst 2678400, als de maand 31 dagen heeft:

60*60*24*31=2678400

Best veel als je het mij vraagt :?

Verwijderd

Topicstarter
Nee, ik wil dus gewoon alle data van bijvoorbeeld de maand januari.

NU heb ik dus timestamps in mysql staan. Nu heb ik al in de docs gekeken maar kom er niet uit.

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 14-07 14:28

thomaske

» » » » » »

werkt dit niet?

$date1 = mktime(0,0,0,date("j"),1,date("y"));
$date2 = mktime(0,0,-1,date("j")+1,1,date("y"));

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


  • Nibbles
  • Registratie: Maart 2000
  • Laatst online: 16-04 12:46

Nibbles

just nibb it

pak voor de laatste dag van de maand date("t")

Verwijderd

http://www.mysql.com/doc/D/a/Date_and_time_functions.html

SELECT data FROM tabel WHERE MONTH(timestamp) = $maand;

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 09:47
Ongeveer de oplossing van Thomaske, maar dan makkelijker:

$date1 = mktime(0, 0, 0, maand, 1, jaar)
$date2 = mktime(0, 0, 0, maand + 1, 1, jaar)

en dan in je query 'WHERE timestamp >= $date1 AND timestamp < $date2'

Verwijderd

Op woensdag 26 juni 2002 15:22 schreef sjroorda het volgende:
Ongeveer de oplossing van Thomaske, maar dan makkelijker:

$date1 = mktime(0, 0, 0, maand, 1, jaar)
$date2 = mktime(0, 0, 0, maand + 1, 1, jaar)

en dan in je query 'WHERE timestamp >= $date1 AND timestamp < $date2'
en wat moetie met deze post opschieten?! wat thomaske had gezegd heb jij allen verandert, en dat van jou is niet eens correcte php... en natuurlijk moet je ook nog even die -1 doen bij de seconde omdat je anders nog de eerste seconde van de volgende dag meetelt,

waarom trouwens niet mijn oplossing door het gewoon in de query op te lossen?

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 14-07 14:28

thomaske

» » » » » »

Op woensdag 26 juni 2002 15:26 schreef zellufs het volgende:

[..]

en wat moetie met deze post opschieten?! wat thomaske had gezegd heb jij allen verandert, en dat van jou is niet eens correcte php... en natuurlijk moet je ook nog even die -1 doen bij de seconde omdat je anders nog de eerste seconde van de volgende dag meetelt,
Neehoor, die wordt al weggefilterd door de '<'
waarom trouwens niet mijn oplossing door het gewoon in de query op te lossen?
is ook netjes :)

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."

Pagina: 1