enter image description here我只是不知道在发行某些类后如何获取每个类(类:普通,贵宾等)的总可用票。我的数据库记录了普通票的票类,VIP票的类以及每类的打印数量)。我已经知道了如何计算总数。通过使用COUNT(ticket_class),我也已经获得了每个班级发出的总票数。但是我的问题是,在知道已经知道发行数量的情况下,如何获取每个班级剩余的剩余门票数量。我只是不知道从哪里开始,因为每个类别发出的数量不会自动记录在数据库中,它只会动态循环显示。我的代码如下:
<?php
$login_user = $_SESSION['UserLogin'];
$mysqli = new mysqli("localhost", "root", "", "mydb");
$result = $mysqli->query("SELECT SUM(qty) FROM tickets") or die("Please update the database.");
$row = $result->fetch_array()or die("Error. Please update first the database on job orders. Or
log-out and login again.");
$totalTickets = $row[0]
?>
<?php
echo "<strong>TOTAL TICKETS COUNT</strong>". $totalTickets;
?>
<div id="mytable">
<tr>
<td><b>Ticket Class<b></td>
<td><b>Ticket Class Printed Qty></td>
<td><b>Handler</td>
</tr>
</div>
<?php
$login_user = $_SESSION['UserLogin'];
$sql = "SELECT * FROM (SELECT * FROM`tickets` ORDER BY date_issued ASC) t ORDER BY date_issued
ASC";
$result = $con->query($sql) or die ("Error. No information in the database.");
$row = $result->fetch_assoc()or die("Error. No information in the database.");
?>
<?php do{ ?>
<tr>
<td> <?php echo '<div align="center">'.$row['ticket_class'];?></td>
<td> <?php echo '<div align="center">'.$row['qty_printed'];?></td>
<td> <?php echo '<div align="center">'.$row['handler'];?></td>
</tr>
<?php }while($row = $result->fetch_assoc())
?>
<?php
$login_user = $_SESSION['UserLogin'];
$query = "SELECT *, COUNT(tickets) FROM mydb GROUP BY tickets ";
$result = mysqli_query($con, $query) or die(mysql_error());
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
?>
<tr>
<td><b>Ticket Class<b></td>
<td><b>Issued Qty<b></td>
<td><b>Unused Qty<b></td>
<td><b>Recepient<b></td>
</tr>
</div>
<?php do{ ?>
<tr>
<td> <?php echo '<div align="center">'.$row['tickets_class'];?></td>
<td> <?php echo '<div align="center">'.$row['COUNT(ticket_class)'];?></td>
<td> <?php echo '<div align="center">'.$row['unused_qty'];?></td>
<td> <?php echo '<div align="center">'.$row['recepient'];?></td>
</tr>
<?php }while($row = mysqli_fetch_array($result, MYSQLI_BOTH));
?>
</div>
<div id="table">
<td div align="center"><b>Ticket Class<b></td>
<td div align="center"><b>Recipient<b></td>
</tr>
</div>
<?php
$login_user = $_SESSION['UserLogin'];
$sql = "SELECT * FROM (SELECT * FROM`tickets` ORDER BY visa_i_date DESC) t ORDER BY date_issued
DESC";
$result = $con->query($sql) or die ("Error. No information in the database");
$row = $result->fetch_assoc()or die("<p style='color:#820313;'><b> Error! Please update first the
record on job order or enter a query.<b></p>");
?>
<div id="mytable">
<?php do{ ?>
<tr>
<td> <?php echo '<div align="center">'.$row['ticket_class']; ?></td>
<td> <?php echo '<div align="center">'.$row['recipient']; ?></td>
</tr> <?php }while($row = $userpix->fetch_assoc()) ?> </div>
</table>
</body>
</html>
[好,您应该能够通过$row['ticket_class']
循环运行foreach
,然后检查每种类型的条件,以查看是否将值设置为特定的故障单类型,即vip
,ordinary
,[ C0]等...然后将这些值保存在变量中。
一旦您拥有每种票证类型的售出额。在deluxe
上运行foreach
循环,并检查条件的类型,将每个值保存在变量中,然后将两个值相减,得出总余额。* $row['qty_printed']
表示该变量为整数的缩写。
所以类似下面的内容应该起作用...
+