2013-10-17 42 views
0

我试图计算年龄。我使用这段代码,它对于生日样本很好,但我无法弄清楚如何让$ birthDate等于我的三个单独变量$ day,$ month,$ year,这些变量存储在每个用户的数据库中。我如何做到这一点,因此$ birthDate = $ day/$ month/$ year,并与下面的年龄计算器一起使用?

<?php 
$birthDate = "12/17/1983"; 
$birthDate = explode("/", $birthDate); 
$age = (date("md", date("U", mktime(0, 0, 0, $birthDate[0], $birthDate[1], $birthDate[2]))) > date("md") ? ((date("Y")-$birthDate[2])-1):(date("Y")-$birthDate[2])); 
echo "Age is:".$age; 
?> 

回答

3

这是试图在我登记制度

//date in mm/dd/yyyy format; or it can be in other formats as well 
    $birthDate = $_POST['month']."/".$_POST['date']."/".$_POST['year']; 
    //explode the date to get month, day and year 
    $birthDate = explode("/", $birthDate); 
    //get age from date or birthdate 
    $age = (date("md", date("U", mktime(0, 0, 0, $birthDate[0], $birthDate[1], 
    $birthDate[2]))) > date("md") ? ((date("Y")-$birthDate[2])-1):(date("Y")-$birthDate[2])); 

使用日期时间选择器测试或验证该值通过javascript提交,只允许有效日期

+3

我希望你验证这些$ _POST参数在您的“注册”系统中。 –

+1

@RPM你是什么意思验证?即时通讯使用日期时间选择器为用户输入他的生日不texfield或组合框,如果这就是你的意思 –

+0

@JoseSamaniego问[卷曲](http://curl.haxx.se/),如果它了解日期选择器如何工作。或者可能[this](http://sqlmap.org/)会尝试使用你的日期选择器;-) – Fabio