$idag = date("Y-m-d"); // dagens dato
$brukerdato = $_POST[]; //datoen brukeren oppgir
if (($idag - $brukerdato) => '18') { //hvis over 18 år
echo "du er 18 år eller eldre";
} else { // hvis ikke over 18 år
echo "du er ikke gammel nok";
}
Mulig du kun trenger år. I så fall skriver du date("Y") (4 siffer).
Jeg trenger kun å sjekke om personen er 18 år eller eldre. Men hvis jeg tar kun år, og personen er født 31. desember 1996 og fyller ut skjema 1. januar 2014, vil ikke da denne løsningen runde av til 18 år (2014-1996) selv om personen bare er 17 år og 1 dag?
$minus_atten = strtotime('-18 years');
$alder = mktime(0, 0, 0, ( $_POST['month']), $_POST['day'], $_POST['year']);
$minus_atten = strtotime('-18 years');
$alder = mktime(0, 0, 0, ( $_POST['month']), $_POST['day'], $_POST['year']);
if ($minus_atten < $alder) {
echo 'Ikke over atten!';
}else{
echo 'Over atten';
}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Datoer</title>
<style type="text/css">
label {position: relative; width: 60px; display: inline-block;}
</style>
</head>
<body>
<?php
if (isset($_POST['month']) && isset($_POST['day']) && isset($_POST['year'])) {
$minus_atten = strtotime('-18 years');
$alder = mktime(0, 0, 0, ( $_POST['month']), $_POST['day'], $_POST['year']);
if ($minus_atten < $alder) {
echo 'Ikke over atten!';
}else{
echo 'Over atten';
}
}
?>
<form method="POST" action="">
<p>Fødselsdato</p>
<label>År : </label>
<select name="year">
<?php for ($i=2014; $i>1940; $i--) {echo '<option'.(isset($_POST['year'])&&$i==$_POST['year']?' selected':'').'>'.$i.'</option>';} ?>
</select>
<br />
<label>Måned : </label>
<select name="month">
<?php
for ($m=1; $m<=12; $m++) {
echo '<option value="'.$m.'"'.(isset($_POST['month'])&&$m==$_POST['month']?' selected':'').'>'.(date('F', mktime(0,0,0,$m, 1, date('Y')))). '</option>';
}
?>
</select>
<br />
<label>Dato : </label>
<select name="day">
<?php for ($i=1; $i<32; $i++) {echo '<option'.(isset($_POST['day'])&&$i==$_POST['day']?' selected':'').'>'.$i.'</option>';} ?>
</select>
<br /><br />
<input type="submit" value="Send" />
</form>
</body>
</html>
Hans kodesnutt tar høyde for dag og måned i tillegg, og er samtidig hakket mer elegant. Du må nok se deg slått.adeneo skriver jo akkurat samme koden som meg, det er ingen forskjell.
Hans kodesnutt tar høyde for dag og måned i tillegg, og er samtidig hakket mer elegant. Du må nok se deg slått.