จะแสดงอายุ ของสมาชิกได้อย่างไร

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา จะแสดงอายุ ของสมาชิกได้อย่างไร

จะแสดงอายุ ของสมาชิกได้อย่างไร

 ผมเก็บ วันเกิดของสมาชิก ไว้ดังนี้  ปี-เดือน - วัน แต่จะให้ แสดงเป็น อายุเลย เช่น 40 ปี จะดึงได้อย่างไร 

    <div>
        <? 
        $e=$year+543;
        $txtbirthday=$e." ".$month." ".$day;
        $txtbirthday= $year-$month-$day;
        ?>
     <label for="birthday">วันเกิด:</label>
                  <select name="txtbirthday">
<?
 $day=$POST_['day'];
for ($i = 1; $i <= 31; $i++) {
	echo "<option value='$i'>$i</option>";
}
?>
            </select>&nbsp;
            <select name="month">
<?
$month=$POST_['month'];
$month_list = array("มกราคม", "กุมภาพันธ์", "มีนาคม", "เมษายน", "พฤษภาคม", "มิถุนายน",
					"กรกฎาคม", "สิงหาคม", "กันยายน", "ตุลาคม", "พฤศจิกายน", "ธันวาคม");

for ($i = 0; $i < sizeof($month_list); $i++) {
	$month_no = $i+1;
	echo "<option value='$month_no'>$month_list[$i]</option>";
}
?>
            </select>&nbsp;
            <select name="year">
<?
$year=$_POST['year'];
$min_age = 10;
$max_age = 80;
$pop_age = 20;

$cur_year = date("Y");
$max_year = $cur_year-$min_age;
$min_year = $cur_year-$max_age;
$pop_year = $cur_year-$pop_age;
for ($i = $max_year; $i >= $min_year; $i--) {
	$porsor = $i+543;

	if ($i == $pop_year) {
		echo "<option value='$i' selected='selected'>$porsor</option>";
	}
	else {
		echo "<option value='$i'>$porsor</option>";
	}
}
?>       </select>

 



Niyom 113.53.37.xxx 14-12-2010 12:33:40

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1

 แนวทาง เอาปีปัจจุบัน ลบ ปีเกิด ก็จะได้อายุคร่าวๆ (แสดงเฉพาะปี)

ซึ่งขึ้นอยู่กับว่าเก็บรูปแบบ ข้อมูลวันเกิดเป็นแบบไหน เช่น เก็บ
เก็บปี ค.ศ.
<?php
$bday="1984-05-14";
echo $age=intval(date("Y"))-intval(array_shift(explode("-",$bday)));
?>
 
หรือเก็บปี พ.ศ.
<?php
$bday="2527-05-14";
echo $age=intval(date("Y")+543)-intval(array_shift(explode("-",$bday)));
?>
 
หรือกรณีอื่น ขึ้นกับการประยุกต์


Ninenik 27.130.73.xxx 14-12-2010






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ