Aantal dagen tussen twee data's

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Stef Jager

Stef Jager

10/06/2011 18:31:20
Quote Anchor link
Ik heb met jQuery twee datepickers gemaakt voor een boekingsssyteem
Het gaat om de aankomstdatum en vertrekdatum. Nadat bezoekers dit hebben ingevuld wil ik dat er wordt uitgerekend hoeveel dagen/nachten het zijn. Zodat ik de prijs kan berekenen.

Hoe moet dit?
 
PHP hulp

PHP hulp

22/01/2020 03:41:34
 
Max van den Bosch

Max van den Bosch

10/06/2011 19:23:59
Quote Anchor link
Lijkt me niet moeilijk, maar ach, ik heb toch niets te doen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
$aantal_dagen=$aankomstdatum-$vertrekdatum;
$prijs=$aantal_dagen*$prijspernacht

echo "De prijs is: ".$prijs;
 
Stef Jager

Stef Jager

10/06/2011 19:44:04
Quote Anchor link
Dan moet het wel in de zelfde maand zijn.
 
- SanThe -

- SanThe -

10/06/2011 19:47:18
Quote Anchor link
Waarom?
 
Dennis meijer

dennis meijer

10/06/2011 21:45:22
Quote Anchor link
als je dit met een timestamp doet is dit geen probleem kwa maanden.
 
Arjan -

Arjan -

11/06/2011 00:04:00
Quote Anchor link
Kijk eens naar deze tutorial: http://ditio.net/2008/06/03/php-datetime-and-datetimezone-tutorial/

De datetime class in php 5 is hier handig voor te gebruiken.
 
Stef Jager

Stef Jager

11/06/2011 09:37:32
Quote Anchor link
Bedankt allemaal, het is gelukt.
 
Arjan -

Arjan -

11/06/2011 10:01:36
Quote Anchor link
Hoe is het je gelukt? Wellicht handig voor andere mensen die met hetzelfde probleem zitten om de oplossing ook te plaatsen....
 
Stef Jager

Stef Jager

12/06/2011 11:14:45
Quote Anchor link
Ik heb op google het volgende gevonden:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$begin
= strtotime("10-06-2011");
$eind = strtotime("11-06-2012");
$verschil = $eind - $begin;
$dagen = $verschil / (60*60*24);
echo round($dagen);
?>
 
- SanThe -

- SanThe -

12/06/2011 13:04:23
Quote Anchor link
Leuk, maar heb je het ook getest?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$begin
= strtotime("10-06-2011");
$eind = strtotime("11-06-2012");
$verschil = $eind - $begin;
$dagen = $verschil / (60*60*24);
echo round($dagen);
?>

Geeft 366
Maar als het begin 10 dagen later is:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$begin
= strtotime("20-06-2011");
$eind = strtotime("11-06-2012");
$verschil = $eind - $begin;
$dagen = $verschil / (60*60*24);
echo round($dagen);
?>

Geeft het bij mij -3287
 
Stef Jager

Stef Jager

12/06/2011 15:26:02
Quote Anchor link
Maar, hoe moet ik het dan doen? Bezoekers vullen de data in met dd-mm-jjjj
 
Erik van de Locht

Erik van de Locht

12/06/2011 15:33:28
Quote Anchor link
De datum is in een verkeerd formaat. Amerikaanse notatie is eerst de maand, dan de dag. Ik zou zeggen, verander in je jQuery dat de ingevulde datum in amerikaanse notatie is.
Gewijzigd op 12/06/2011 15:36:33 door Erik van de Locht
 



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.