NOW() + tijd in een database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tom Fischer

Tom Fischer

22/03/2008 13:43:00
Quote Anchor link
Beste phphelpers,
is het ook mogelijk om bijvoorbeeld een datum en tijd+20 minuten vooruit in de database te zetten.
Dus dat er als het 15-02-2008 10:01:33 is dat er dan 15-02-2008 10:21:33 in de db wordt opgeslagen?
Dus als er een form wordt gesubmit moet er dit in de query worden meegegeven.

Met vriendelijke groet tom
 
PHP hulp

PHP hulp

18/12/2024 05:23:58
 
Bart van der veen

bart van der veen

22/03/2008 13:47:00
Quote Anchor link
ja dat is mogelijk:

now()+INTERVAL(20 MIN) zoek zelf even de juiste sintax...
 
Jesper Diovo

Jesper Diovo

22/03/2008 13:47:00
Quote Anchor link
Bekijk de MySQL functie date_add() eens. Via die functie kun je dit heel simpel doen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
UPDATE
  tabel
SET
  datum = date_add(NOW(), INTERVAL 20 MINUTE)
WHERE
  naam = 'tom'
 
Joren de Wit

Joren de Wit

22/03/2008 13:49:00
Quote Anchor link
@Bart: dat is niet de juiste syntax. Dat wist je zelf blijkbaar ook al, dus vreemd dat je hem voorschoteld...

De juiste:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
INSERT INTO tabelnaam
(
    datumtijdveld
)
VALUES
(
    NOW() + INTERVAL 20 MINUTE
)


ps. @Djemo: de functie DATE_ADD() is dialect van MySQL, gebruik dus liever standaard SQL zoals in dit voorbeeld. Verder ging het hier om het invoegen in de database en niet het updaten ;-)
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Bart van der veen

bart van der veen

22/03/2008 13:57:00
Quote Anchor link
@blanche

wat is beter: geen oplossing of een halve oplossing?
 
Joren de Wit

Joren de Wit

22/03/2008 14:14:00
Quote Anchor link
bart van der veen schreef op 22.03.2008 13:57:
wat is beter: geen oplossing of een halve oplossing?
Linkje naar de handleiding?
 
Steen

steen

22/03/2008 15:13:00
Quote Anchor link
je kunt ook time() + (20 * 60) in de database zetten, dat is een timestamp. Die kun je als datum weergeven door date("d-m-Y H:i:s",$timestamp).
 
Joren de Wit

Joren de Wit

22/03/2008 15:14:00
Quote Anchor link
steen schreef op 22.03.2008 15:13:
je kunt ook time() + (20 * 60) in de database zetten, dat is een timestamp. Die kun je als datum weergeven door date("d-m-Y H:i:s",$timestamp).
En dat is dus juiste geen aanrader. Een database kent betere datatypes voor het opslaan van data en tijden, gebruik die dan ook!
 
Frank -

Frank -

22/03/2008 15:37:00
Quote Anchor link
Genoemde date_add() kun je beter vergeten, dat is een achtelijke MySQL uitvinding, die denken dat dit handiger is dan een +... Voor de legendarische - hebben ook zo'n idiote functie uitgevonden, ik zal hem niet noemen, je mag hem toch direct weer vergeten.

Rekenen doe je met plus en min, zo ook met datums en tijden. De INTERVAL geeft de tijdsinterval aan, maar dat had je vast al wel begrepen.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.