gpt4 book ai didi

php - 如何使用 php 从 mysql 表中存储的出生日期计算年龄

转载 作者:行者123 更新时间:2023-11-29 21:58:07 26 4
gpt4 key购买 nike

我有一个带有动态选择选项的表单。我想从数据库中选择山羊后计算其出生日期(以月为单位)的年龄,并在动态选择选项后面的表单字段中回显所选的山羊年龄。这是选择脚本:

<?php 
$conn = mysqli_connect("localhost", "root", "xxx", "xxxx");
if(mysqli_connect_errno($conn)) {
echo "Unable to connect to database server";
}

$sql = "SELECT * FROM goats WHERE sex='Male'";
$query = mysqli_query($conn, $sql);

echo '<select name="hegoat">';
echo '<option value="">Choose He Goat</option>';
while($hegoats = mysqli_fetch_assoc($query)){
echo "<option>{$hegoats['goatid']}</option>";
}
echo '</select>';
?>

数据库表是山羊,其中“dob”作为出生日期列而年龄的表单字段为:<input type="text" name="age" id="age"/>

我的 PHP 代码是

<?php
if(isset($_POST['sub']))
{
date_default_timezone_set ("Asia/Calcutta");
$dateofreg1=date("d M Y");
$dbd=$_POST['dob'];
$startTimeStamp = strtotime($dbd);
$endTimeStamp = strtotime($dateofreg1);
$timeDiff = abs($endTimeStamp - $startTimeStamp);
$numberDays = $timeDiff/86400;
$numberDays = intval($numberDays);
$days="Total day :".$numberDays;
$birthDate =$dbd;
$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]));
$dobs="Age is:" . $age;
}
?>

最佳答案

根据您最后的评论,我给出这个答案。

 <?php if(isset($_POST['sub'])) 
{
date_default_timezone_set ("Asia/Calcutta");
$dateofreg1=date("d M Y");
$dbd=$_POST['dob'];
$startTimeStamp = strtotime($dbd);
$endTimeStamp = strtotime($dateofreg1);

$year1 = date('Y', $startTimeStamp); //select year1
$year2 = date('Y', $endTimeStamp); //select year 2
$month1 = date('m', $startTimeStamp); //month1
$month2 = date('m', $endTimeStamp); //month2
$diff = (($year2 - $year1) * 12) + ($month2 - $month1); //year*12 and month difference
$dobs="Age is:" . $diff. " months";
?>

关于php - 如何使用 php 从 mysql 表中存储的出生日期计算年龄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32920326/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com