Disse tre ting handler blot om at have de rigtige felter i databasen.
Oprettet dato/tidVed oprettelse gemmer du også tidspunktet. F.eks kan du snildt have et felt af typen timestamp hvor i du gemmer værdien fra NOW().
Eksempel:
- INSERT INTO users (username,password,created) VALUES('x','x2',NOW())
Sidst logget ind dato/tidVed valideringsprocessen af brugeren, efter brugeren er valideret opdateres feltet last_login. Ligesom Jesper skriver:
- UPDATE users SET last_login = NOW() WHERE id = 1
Nyhed oprettet dato/tidVed oprettelse gemmer du også tidspunktet. F.eks kan du snildt have et felt af typen timestamp hvor i du gemmer værdien fra NOW().
Eksempel:
- INSERT INTO news (title,content,created) VALUES('title','content',NOW())
Alder kan udregnes på flg. måde (i SQL):- SELECT *, DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(birthday, '%Y') - (DATE_FORMAT(NOW(), '00-%m-%d') < DATE_FORMAT(birthday, '00-%m-%d')) AS age FROM users WHERE id = 1
...og data kan hentes på sædvanligvis:
- <?php
- $sql = "SELECT *, DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(birthday, '%Y') - (DATE_FORMAT(NOW(), '00-%m-%d') < DATE_FORMAT(birthday, '00-%m-%d')) AS age FROM users WHERE id = 1";
- $query = mysql_query($sql);
- $result = mysql_fetch_assoc($query);
-
- echo 'Brugeren er '.$result['age'].' år gammel';
- ?>
Bemærk, intet er testet. Dog ser jeg ingen umiddelbare fejl.
---
Steffan, det er fandme da en mystisk måde at regne på.
Hvorfor bruger du ikke MySQL timestamps, de går jo også tilbage til før 1970.
Indlæg senest redigeret d. 16.10.2010 13:17 af Bruger #10216