我有一个for循环,它显示一个月中的所有日期。我还有一个表,其中存储了不同的日期。我希望能够查询该表,以选择该月每个日期的所有记录的总数,并在for循环的结果中显示每个日期的记录总数。
不知道该怎么做。
我认为问题出在查询构造上,但我找不到实现目标的最佳方法。
例如,对于六月的第一天,我希望看到5个插槽。第二天,10个插槽,等等
$ucimslots = "25";
$curyear = date("Y");
$month = $_POST['month'];
$day = date('j');
$daysinmonth = date('t',mktime(0,0,0,$month,1,$curyear));
$query = "SELECT uciID, bookingdate, paymentstatus FROM ucibooking WHERE bookingdate=?";
$stmt = $connQlife->prepare($query);
$stmt->bind_param('s', $day);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($uciID, $bookingdate, $paymentstatus);
$stmt->fetch();
$totalnumrows = $stmt->num_rows;
$stmt->close();
if ($totalnumrows!=0){
$availableslots = $ucimslots - $totalnumrows;
}else if ($totalnumrows==0){
$availableslots = $ucimslots;
}
<?Php for($day = 1; $day <= $daysinmonth; $day++){?>
<div class="calendarcont">
<div class="calendarheadercont">
<div class="calendarday"><?Php echo date("l", mktime(0, 0, 0,$month,$day,$curyear)); ?></div>
</div>
<div class="clear_1"></div>
<div class="calendarsubcont">
<div class="calendardatecont">
<div class="calendarmonth"><?Php echo date("M", mktime(0,0,0, $month,$day,$curyear)); ?></div>
<div class="calendardate"><?Php echo date("j", mktime(0,0,0,$month,$day,$curyear)); ?></div>
</div>
<div class="calendartextcont">
<div class="calendartextr"><?Php echo $availableslots; ?></div>
</div>
</div>
</div>
<?Php } ?>
发布于 2019-06-06 17:56:50
我解决了这个问题。因此,如果将来其他任何人遇到此问题,我所做的就是修改对数据库的查询。问题出在查询及其调用位置。它在for循环之外。因此,我将其包含在for循环中,如下所示:
<?Php for($day = 1; $day <= $daysinmonth; $day++){
$query = "SELECT uciID, bookingdate, paymentstatus FROM ucibooking WHERE YEAR(bookingdate)=? AND MONTH(bookingdate)=? AND DAY(bookingdate)=?";
$stmt = $connQlife->prepare($query);
$stmt->bind_param('sss', $curyear, $month, $day);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($uciID, $bookingdate, $paymentstatus);
$stmt->fetch();
$totalnumrows = $stmt->num_rows;
$stmt->close();?>
<div class="calendarcont">
<div class="calendarheadercont">
<div class="calendarday"><?Php echo date("l", mktime(0, 0, 0,$month,$day,$curyear)); ?></div>
</div>
<div class="clear_1"></div>
<div class="calendarsubcont">
<div class="calendardatecont">
<div class="calendarmonth"><?Php echo date("M", mktime(0,0,0, $month,$day,$curyear)); ?></div>
<div class="calendardate"><?Php echo date("j", mktime(0,0,0,$month,$day,$curyear)); ?></div>
</div>
<div class="calendartextcont">
<div class="calendartextr"><?Php echo $availableslots; ?></div>
</div>
</div>
</div>
<?Php } ?>
https://stackoverflow.com/questions/56465884
复制相似问题