0
你好,我想獲取所有的數據順序在月,但我的問題是數據類型的月我的數據庫是varchar可以有人給我的想法如何做到這一點?PHP - 按月排序,但數據類型是varchar?
這裏的結構是查詢的輸出到事件
,這裏是我的事件代碼
<div class="col-xs-6 col-md-3">
<div class="title2">
<h2><i class="fa fa-calendar"></i> Upcoming Events</h2>
</div>
<div class="fix sidebar floatright">
<div class="fix single_sidebar">
<div class="events">
<?php
include_once('connection.php');
$sql ="SELECT * FROM events ORDER BY month";
$result = mysqli_query($con, $sql);
while($row = mysqli_fetch_array($result)){
$month = $row['month'];
$day = $row['day'];
$year = $row['year'];
$etitle = $row['event_title'];
$stime = $row['start_time'];
$etime = $row['end_time'];
$evenue = $row['event_venue'];
?>
<div class="fix single_events">
<div class="date">
<span class="month"><?php echo $month; ?></span>
<h1 class="day"><?php echo $day; ?></h1>
</div>
<h2><?php echo $etitle; ?></h2>
<p><?php echo $stime; ?> - <?php echo $etime; ?></p>
<p><?php echo $evenue; ?></p>
</div>
<hr>
<?php
}
?>
</div>
</div>
</div>
</div>
在'varchar' _永遠_存儲日期,商店爲'datetime'相反,這是你的問題的最簡單的方法。如果您向我們顯示查詢的實際輸出,則可能有人會給您一個解決方法。 –
如果您更改了列類型,它將在未來減少您的麻煩。解決方法是使用MySQL的['FIELD()'](http://dev.mysql.com/doc/refman/5.7/en/string-functions.html#function_field) - >'SELECT * FROM events ORDER按字段(月,'1月','2月',...)' – Sean