Записване на дата на разжаде в базата данни

qazxsw

Registered
Дайте примери как да запиша дата на раждане в база данни и какъв тип да е таблицата където ще се записва датата?

Защото имам 3 <select></select> тага в единият е датата в другият месеца и в третият годината.

Как мога да ги събера всичките на 1 поле в таблицата или трябва всяко да е на отделно поле?
 
Вариантите са много!Зависи дали само записваш датата, или после ще ти трябва за сравнение с друга дата?
 
Ами например искам потребителите който са под 16 години, да не могат да посещават дадена част от сайта, значи ще ми трябва за сравнение.

Най-добрият начин май ще е да си направя 3 отделни полета в базата данни с име day, month year.

Но, си мислех и за вариянта да е едно поле с име date_of_birth и датата да се записва така - 31/12/1973 или 31121973 където да знам кое число за какво служи, но не знам дали е възможно чрез някоя функция ако извадя целият запис от базата данни дали ще мога да разграничавам отделните числа.
 
Значи вземаш си стойностите, после:
Код:
$day = $_POST['day']; //14
$month = $_POST['month']; //10
$year = $_POST['year']; //1981
$data = mktime(0, 0, 0, $month, $day, $year);
//ще получиш едно число от рода на 371858400, което записваш в база-данни
//типа на полето в база-данни го направи BIGINT
След това, като извеждаш след сравнение дати-те, правиш:
$data = 371858400; //това ти е записа в БД
echo date("d/m/Y", $data); //и ще ти изведе 14/10/1981
 
Код:
<?php
$birthday = '31/12/1992';
list($day,$month,$year) = explode("/",$birthday);
$year_diff  = date("Y") - $year;
$month_diff = date("m") - $month;
$day_diff   = date("d") - $day;
if ($day_diff < 0 || $month_diff < 0)
$year_diff--;
echo $year_diff;
?>

Ако случайно нямаш и подобно кодче заповядай изчислява на колко години е даден потребител :) ако пък имаш и знаеш как се прави съжалявам че се намесвам в темата :) Поздрави.
 

Back
Горе