Html5类型日期-需要完整的日期值在数据库中



这是我的HTML代码

<div class="required" id="join_form">
                    <label for="DOB">DateOfBirth:</label>
                    <input type="date" name="date" id="date" required pattern="(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)dd" aria-required="true" aria-describedby="age-format" max="2004-12-31" min="1940-12-31" />
                    <span id="age-format" class="help" align="center">Format: mm/dd/yyyy, mm-dd-yyyy, mm.dd.yyyy, mm dd yyyy</span>
            </div>

javascript在其他浏览器中验证type=date

var mydate = document.getElementById('date'),
    mydateError = document.getElementById('age-format');
mydate.addEventListener('input', function() {
    if (!mydate.value.match(/d{4}-d{1,2}-d{1,2}/)) {
        mydateError.innerHTML = 'Please specify a valid date in the form 1940-2004 ';
        mydateError.style.display = 'inline-block;font-size:6pt;text-align:center;';
    } else {
        var value = new Date(date.value),
            min = new Date(date.min),
            max = new Date(date.max);
        if (value < min || value > max) {
            mydateError.innerHTML = 'Date has to be between ' + min.toDateString() + ' and ' + max.toDateString();
            mydateError.style.display = 'inline-block';
        } else {
            mydateError.style.display = 'none';
        }
    }
});

php验证并插入日期

$DOB=mysql_real_escape_string($_POST['date']);
$sql="INSERT INTO register(DOB) VALUES("$DOB");

我想得到整个出生日期,比如mm/dd/year,但在我的数据库中,我只得到1970年或1987年这样的年份....我不知道哪里出错了

PHP mysql insert date format

这个链接确实帮助了我,我用它来验证和插入type="date"在数据库

$timestamp = strtotime($DOB);
$date = date('d-m-y', $timestamp);
 $sql="INSERT INTO register(DOB) VALUES(FROM_UNIXTIME($timestamp))";
我的另一个错误是在数据库 中将DOB设置为int

mysql中包含日-月-年的数据类型

应该是DATEDATETYPE

@Tonywilk谢谢:D

最新更新