您好我想在一个月内获取所有数据顺序,但我的问题是我的数据库月份的数据类型是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>
答案 0 :(得分:2)
问题是month
是一个字符串,而不是数值。
在不知道价值的情况下,很难提出具体的解决方案。但这里有一个想法:
order by field(month, 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec')