gpt4 book ai didi

php - 如何添加 case 语句以在每条记录后添加 break?

转载 作者:行者123 更新时间:2023-11-29 02:44:53 25 4
gpt4 key购买 nike

当查找 LIKE 'B%' 的下一条记录时,每行 LIKE 'A%' 之后应该有一个中断。

$stmt = $con->prepare("SELECT * FROM fistevent WHERE Event_Id=? AND TicketType=? AND row_name REGEXP '^[A-Z]' ORDER BY row_name ASC");

$stmt->bind_param("ss", $_POST['EventId'],$_POST['TicketType']);
$stmt->execute();
$result = $stmt->get_result();
$numRows = $result->num_rows;
if($numRows > 0) {
echo ' <div class="register">';
while($r = $result->fetch_assoc()) {
$EvntId = $r['Event_Id'];
$RowName = $r['row_name'];

echo '<ul id="sub" class="sub">';
if($r['seats'] == null){
echo '<li class="BlankSeat" ></li>';
}elseif($r['Status'] == 'Y' || $r['Status'] == 'Hold'){
echo '<li class="occupied" title="Row'.$r["seats"].'" name="'.$RowName.'" value="'.$r["seats"].'"></li>';
}else{
echo '<li class="Available" title="Row'.$r["seats"].'" name="'.$RowName.'" value="'.$r["seats"].'"></li>';
}
echo "</ul>";
}
echo '</div>';

I am getting the following output, but I want after `LIKE 'A%'` the next `LIKE 'B%'` should be in the next row.

enter image description here

更新代码在这里

$stmt = $con->prepare("SELECT * FROM fistevent WHERE Event_Id=? AND TicketType=? AND row_name REGEXP '^[A-Z]' ORDER BY row_name ASC");
$stmt->bind_param("ss", $_POST['EventId'],$_POST['TicketType']);
$stmt->execute();
$result = $stmt->get_result();
$numRows = $result->num_rows;
if($numRows > 0) {
echo ' <div class="register">';
$prev='A';
while($r = $result->fetch_assoc()) {
$EvntId = $r['Event_Id'];
$RowName = $r['row_name'];
if($prev!=$RowName){
echo "<br>";
$prev=$RowName;
}
echo '<ul id="sub" >';
if($r['seats'] == null){
echo '<li class="BlankSeat" ></li>';
}elseif($r['Status'] == 'Y' || $r['Status'] == 'Hold'){
echo '<li class="occupied" title="Row'.$r["seats"].'" name="'.$RowName.'" value="'.$r["seats"].'"></li>';
}else{
echo '<li class="Available" title="Row'.$r["seats"].'" name="'.$RowName.'" value="'.$r["seats"].'"></li>';
}
echo "</ul>";
}
echo '</div>';
}else{
echo "No seats Available";
}

**in responsive**

enter image description here

最佳答案

由于您按 row_name 排序,您只需要检查新值是否与以前的值不同。

//setting firstLetter
$firstLetter = '1';
while($r = $result->fetch_assoc()) {
$EvntId = $r['Event_Id'];
$RowName = $r['row_name'];


echo '<ul id="sub" class="sub">';
if($r['seats'] == null)
{
echo '<li class="BlankSeat" ></li>';
}
else if($r['Status'] == 'Y' || $r['Status'] == 'Hold')
{
echo '<li class="occupied" title="Row'.$r["seats"].'" name="'.$RowName.'" value="'.$r["seats"].'"></li>';
}
else
{
echo '<li class="Available" title="Row'.$r["seats"].'" name="'.$RowName.'" value="'.$r["seats"].'"></li>';
}
//comparing current first letter with previous first letter,also skipping the break if it is the first row
if($RowName[0] != $firstLetter && $firstLetter !='1' ){
echo "<br />";
}
$firstLetter = $RowName[0];

echo "</ul>";
}

关于php - 如何添加 case 语句以在每条记录后添加 break?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44340615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com