Toon posts:

[php] Data van elkaar aftrekken??!!

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hmmz, wou ff zoeken, kreeg dit:

Je zoekactie naar 'php' leverde geen resultaten op. Resultaten 1 - geen.

Lijkt me sterk...


Maar mijn probleempie is dus: ik heb een bepaalde registratiedatum in een datbase per user. Nou wil ik gemiddelden per dag gaan berekenen. Hiervoor heb ik dus het aantal dagen nodig dat een user is geregistreerd. Dus moet ik iets van $nu-$reg doen.. Alleen hoe moet dit in php?? Heb geen id eigenlijk, maar d8 wel dat ik 't een keer bij de search had zien staan! Maar dus kan iemand mij dat ff vertellen?? Bedankt!

  • Grum
  • Registratie: Juni 2001
  • Niet online
strftime / mktime / substr / date
moet je genoeg mee kunnen

  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
als de GoT search niet werkt kun je http://onno.dhs.org/ gebruiken.

hoe zijn de datums in de database opgeslagen? als timestamp of als 'dd-mm-yyyy'? in het eerste geval doe je idd gewoon $nu - $reg, dan krijg je dus het verschil in seconden, anders moet je kijken naar de functies van Grum_.

  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

[title]Data van elkaar aftrekken[/title]

[off-topic]
Dat laat ik doen. :Y)
[/off-topic]

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


Verwijderd

Topicstarter
de regdate staat in mysql als datetime in de vorm jjjj-mm-dd hh:mm:ss Duzz dan word ie lastig zeker??

Verwijderd

Topicstarter
ik kom er nog steeds niet helemaal uit.. Heb wel een script gevonden maar die blijkt ook weer niet te werken.. :(

  • Grum
  • Registratie: Juni 2001
  • Niet online
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
function split_time($time)
{
    return array(substr($time,0,4),
                 substr($time,5,2),
                 substr($time,8,2),
                 substr($time,11,2),
                 substr($time,14,2),
                 substr($time,17,2)
                );
}
 
list($Y1,$M1,$D1,$h1,$m1,$s1) = split_time('2001-04-28 05:05:12');
list($Y2,$M2,$D2,$h2,$m2,$s2) = split_time('2000-01-27 03:04:11');
 
$num_sec = mktime($h1-$h2,$m1-$m2,$s1-$s2,$M1-$M2,$D1-$D2,$Y1-$Y2);
 
// nu mag je zelf verder
?>

dit is de meest ranzige manier :) .. maar tis maar een voorbeeld (btw niet getest)

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 10:37

Janoz

Moderator Devschuur®

!litemod

Rekenen met data doe je met timestamps.. Pas bij het printen moet je d'r voor mensen iets leesbare varianten van maken..

Met timestamps kun je gewoon $now-$reg doen en dit vervolgens delen door het aantal seconden dat in een dag zit (24*60*60) en je hebt je aantal dagen :)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1