cri*_*ano 6 php mysql jquery codeigniter
我无法使用Date数据类型将我的JQuery Datepicker中的值插入到我的MySQL数据库中.我将如何将字符串转换为日期数据类型?即时通讯使用Codeigniter与MVC.这是我的代码:
JavaScript的
<script>
$(function() {
$( "#datepicker" ).datepicker({
showOn: "button",
buttonImage: "images/icons/calendar_24.png",
buttonImageOnly: true,
onSelect: function(dateText, inst){
$("input[name='dob']").val(dateText);
}
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
调节器
function create()
{
$data = array(
'FirstName' => $this->input->post('fname'),
'DateofBirth' => $this->input->post('dob')
);
$this->site_model->add_record($data);
$this->index();
}
Run Code Online (Sandbox Code Playgroud)
视图
<?php echo form_open('site/create');?>
<p>
<label for="fname">First Name:</label>
<input type="text" name="fname" />
</p>
<p>
<input type="text" name='dob' id="datepicker" />
</p>
Run Code Online (Sandbox Code Playgroud)
多谢你们!我在谷歌读了一些解决方案,我这样做了:
控制器:
function create()
{
$date = $this->input->post('dob');
$data = array(
'FirstName' => $this->input->post('fname'),
'DateofBirth' => date('Y-m-d', strtotime($date))
);
$this->site_model->add_record($data);
$this->index();
}
Run Code Online (Sandbox Code Playgroud)
这解决了我的问题!:)
我假设您的MySQL表的dob列是DATE类型.
Datetype以yyyy-mm-dd例如的格式获取值2012-09-21
因此,要回答您的问题 - 您需要将日期从datepicker格式化为上述有效格式.例如,如果您的日期选择日期是dd-mm-yy您需要使用date()控制器中的php 函数将其转换为mysql日期格式的格式....(还有其他方法来处理datetime类等日期)
function create()
{
$data = array(
'FirstName' => $this->input->post('fname'),
'DateofBirth' => date('Y-m-d', strtotime(str_replace('-', '/', $this->input->post('dob'))));
);
$this->site_model->add_record($data);
$this->index();
}
Run Code Online (Sandbox Code Playgroud)
使用strtotime时注意()
通过查看各个组件之间的分隔符来消除m/d/y或dmy格式的日期:如果分隔符是斜杠(/),则假设为美国m/d/y; 而如果分隔符是破折号( - )或点(.),则假定为欧洲dmy格式.
| 归档时间: |
|
| 查看次数: |
19458 次 |
| 最近记录: |