Goedenavond,

Ik wil een datum die ik via een formulier mee krijg in 2008-05-01 notatie verhogen met 10 dagen. Ik heb het geprobeerd met strtotime maar het lukt helaas niet. Weet iemand mischien hoe dit moet?


<?php
$dag = strtotime($_POST['datum'], "+10 Days");
echo "10 Dagen na {$_POST['datum']} = {$dag}\n";
?>
Ik doe het altijd zo:


<?php
$post_datum = $_POST['datum'];
$convert_time = strtotime($post_datum);

$time = $convert_time + "864000";
$dag = date("Y-m-d", $time);

echo "10 Dagen na {$_POST['datum']} = {$dag}\n";

?>


Hiermee zou het moeten lukken
maak van de , een .

<?php
$dag = strtotime($_POST['datum']. "+10 Days"); // <= de regel dus met een punt
echo '10 Dagen na '.$_POST['datum'].' = '.$dag."\n"; // variabelen buiten quotes
?>
Ik dat hij het doet dank je wel, alleen nog een vraagje waar staat die 864000 voor? (kan mischien een beetje dom klinken maar ik weet het echt niet)
Die 864000 is een simpele berekening, het zijn namelijk allemaal secondes.
Ik bereken het zo: 3600 x 24 x 10 = 864000, die 3600 seconden is bij elkaar een uur x een dag (24 uur) en x 10 dagen ;)
@Josef

Volgens mij is het zo:

<?php
$dag = strtotime("+10 Days",$_POST['datum']);
echo "10 Dagen na {$_POST['datum']} = {$dag}\n";
?>
Josef Zorgui schreef op 25.04.2008 22:59
Ik dat hij het doet dank je wel, alleen nog een vraagje waar staat die 864000 voor? (kan mischien een beetje dom klinken maar ik weet het echt niet)

1*60*60*24*10
seconde*minuten*uren*aantal uur in een dag*dagen

Bah, te laat.
pgFrank bij jouw krijg ik als resultaat 10 Dagen na 2008-05-01 = 1210456800
@Josef

Dat is een timestamp (het is ook strtotime) Probeer het eens zo:

<?php
$dag = date('Y-m-d',strtotime($_POST['datum']."+10 Days"));
echo "10 Dagen na {$_POST['datum']} = {$dag}\n";
?>
@ Josef: wat is de reden van die tien dagen verhogen? En gebruik je een database? Die heeft meer/betere mogelijkheden om met datums en tijden te rekenen dan PHP.
Josef Zorgui schreef op 25.04.2008 23:07
pgFrank bij jouw krijg ik als resultaat 10 Dagen na 2008-05-01 = 1210456800
Met de functie date() nog wel even de boel opmaken, anders blijft het een timestamp.

Reageren