gpt4 book ai didi

php - 如何将 Angular Datepicker UI 值插入 MySQL 列?

转载 作者:行者123 更新时间:2023-11-29 13:08:38 27 4
gpt4 key购买 nike

我正在使用Angular Bootstrap UI Datepicker以这样的形式:

<!-- DATE -->
<div id="date-group" class="form-group" ng-class="{ 'has-error' : (errorDt) || (userForm.dt.$invalid && submitted) }">
<label>Date</label>
<div class="input-group">
<input type="text" class="form-control" datepicker-popup="{{format}}" name="dt" ng-model="formData.dt" is-open="datepickers.dt" datepicker-options="dateOptions" ng-required="true" close-text="Close" />
<span class="input-group-btn">
<button class="btn btn-default" ng-click="open($event,'dt')"><i class="glyphicon glyphicon-calendar"></i></button>
</span>
</div> <!--Closing of input-group-->

<span class="help-block" ng-show="errorDt"> {{ errorDt }} </span>
<span ng-show="userForm.dt.$invalid && submitted" class="help-block">Date is required.</span>
</div>

这通过这样的 Controller 进行:

$http.post('form-submit.php', $scope.formData)
.......

form-submit.php 将其添加到数据库中,如下所示:

$sql = 'INSERT INTO sample_column (date,name) VALUES (:date, :name)';           

$stmt = $db->prepare($sql);

$stmt->execute(array(
'date' => $_POST['dt'],
'name' => $_POST['name']
));



}

mySql 中的日期列是“date”类型,当脚本插入使用 Angluar Bootstrap UI 的日期选择器从表单接收的日期值时,sql 中的值显示为 0000-00-00。我假设这是因为 datepicker UI 和 SQL 的日期类型列之间的日期格式不同。

所以我的问题是:

1) 如果我插入 Angluar Bootstrap UI 的日期选择器值,我需要在 MySql 列中的日期字段中使用正确的“类型”是什么?

2)如何在mysql中正确插入日期?

最佳答案

这就是我最终解决这个问题的方法:

我发现 Angular Bootstrap UI 的日期选择器采用 ISO8601 格式。因此,我通过执行以下操作将 php 文件中的日期格式从“ISO8601”转换为“日期”:

$date = '2014-03-13T09:05:50.240Z';

$fixed = date('Y-m-d', strtotime($date));

引用号:How to convert ISO8601 to Date format in php

然后,我使用 mySQL 查询将此 $fixed 值插入到 MySQL DATE 类型字段中。这对我有用。

关于php - 如何将 Angular Datepicker UI 值插入 MySQL 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22374798/

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