このコードは、特定の日の予約のリストを表示するのに問題なく機能し、ゲストとテーブルの数を 1 日全体で問題なく合計します。返されたすべての予約を合計します。
私がやろうとしていることは、特定の時間間隔に基づいて合計を取得する方法です。たとえば、8:00、9:00、10:00 などのゲストとテーブルの数....
合計がどこで計算されているかはわかりますが、変数を追加して、1 日の合計だけでなく、reservation_time と合計を確認する方法を追加する方法を追加する必要があります。
$tablesum ++;
$guestsum += $row->reservation_pax;
<?php echo $guestsum;?> <?php echo _guest_summary;?>
データを取得して合計する完全なコードは次のとおりです。
<?php
// Clear reservation variable
$reservations ='';
if ($_SESSION['page'] == 1) {
$reservations = querySQL('all_reservations');
}else{
$reservations = querySQL('reservations');
}
// reset total counters
$tablesum = 0;
$guestsum = 0;
if ($reservations) {
//start printing out reservation grid
foreach($reservations as $row) {
// reservation ID
$id = $row->reservation_id;
$_SESSION['reservation_guest_name'] = $row->reservation_guest_name;
// check if reservation is tautologous
$tautologous = querySQL('tautologous');
echo "<tr id='res-".$id."'>";
echo "<td";
// daylight coloring
if ($row->reservation_time > $daylight_evening){
echo " class='evening noprint'";
}else if ($row->reservation_time > $daylight_noon){
echo " class='afternoon noprint'";
}else if ($row->reservation_time < $daylight_noon){
echo " class='morning noprint'";
}
echo " style='width:10px !important; padding:0px;'> </td>";
echo "<td id='tb_time'";
// reservation after maitre message
if ($row->reservation_timestamp > $maitre['maitre_timestamp'] && $maitre['maitre_comment_day']!='') {
echo " class='tautologous' title='"._sentence_13."' ";
}
echo ">";
echo "<strong>".formatTime($row->reservation_time,$general['timeformat'])."</strong></td>";
echo "<td id='tb_pax'><strong class='big'>".$row->reservation_pax."</strong> <span class='noprint'>";
$tablesum ++;
$guestsum += $row->reservation_pax;
}
}
?>
<?php echo $guestsum;?> <?php echo _guest_summary;?>
わかりました。近づいています。合計して表示することができました...もう1つのパラメーターで絞り込む必要があります。これで、すべての予約の合計ゲスト数 (reservation_pax) がわかります。指定された日付またはセッションまでにそれを行う必要があります。このページには、選択した日付の予約のみが表示されますが、スクリプトはすべての日を 8:00 の予約でカウントします。
表示されている特定の日付のセッション ページが既に作成されているため、絞り込むのに助けが必要です。
$result = mysql_query("SELECT SUM(reservation_pax) FROM reservations WHERE reservation_time = '8:00'");
if($result === FALSE) {
die(mysql_error()); // TODO: better error handling
}
while($row = mysql_fetch_array($result))
{
echo $row['SUM(reservation_pax)'];
}