HTML5输入类型日期:如何使日期字符串


HTML5 input type date: how to make the date string

我一直在使用HTML 5的输入type="date",发现它非常有用。我只是想知道这是否可能:

假设我在日期选择器中选择了1/01/2012

我想把它保存在我的数据库(mysql),但我希望它是这样的" January 1,2012 "

是否有方法和如何做?

require_once "includes/database.php";
$title=$_POST['txtTitle'];
$old_date  = explode("/",$_POST['txtDate']);
$new_date = $old_date[1].' '.$old_date[0].','.$old_date[2];
$date=$new_date;
$from=$_POST['txtFrom'];
$to=$_POST['txtTo'];
$place=$_POST['txtPlace'];
$details=$_POST['txtDetails'];
$id=$_POST['txtEid'];   
        if($id==""){
            $sql = "INSERT INTO events (event_title,event_date,event_tfrom,event_tto,event_place,event_details) VALUES (:title,:date,:from,:to,:place,:details)";
            $qry = $db->prepare($sql);
            $qry->execute(array(':title'=>$title,':date'=>$date,':from'=>$from,':to'=>$to,':place'=>$place,':details'=>$details));
        }else{
        $sql = "UPDATE events SET event_title=?, event_date=?, event_tfrom=?, event_tto=?, event_place=?, event_details=? WHERE event_id=?";
            $qry = $db->prepare($sql);
            $qry->execute(array($title,$date,$from,$to,$place,$details,$id));
        }
    echo "<script language='javascript' type='text/javascript'>alert('Successfully Saved!')</script>";
    echo "<script language='javascript' type='text/javascript'>window.open('cms_events.php','_self')</script>";

使用javascript可以做如下操作

    <button onclick = "getDate()">click for date</button>
    <script>
    function getDate(){
       var monthsOfYear = new Array("January", "February", "March", 
"April", "May", "June", "July", "August", "September", 
"October", "November", "December");
   var d = new Date();
   var currdate = d.getDate();
   var currmonth = d.getMonth();
   var curryear = d.getFullYear();
   alert(monthsOfYear[currmonth] + " "+currdate+","+curryear);
}

你可以使用一些php函数来爆炸。

$old_date  = explode("-",$_POST['date']);
$new_date = $old_date[2].' '.$old_date[1].','.$old_date[0];
echo $new_date;

2012年1月1日

这将完美地为您的代码工作,检查它…

$old_date  = explode("-",$date);

$months = array('January'=>"01",'February'=> "02", 'March'=>"03",'April'=>"04",  'May'=>"05", 'June'=>"06", 'July'=>"07", 'August'=>"08",'September'=> "09",'October'=>"10", 'November'=>"11", 'December'=>"12");

$nw_month = array_search($old_date[1],$months);

$new_date = $old_date[2].' '.$nw_month.','.$old_date[0];
echo $new_date;