嗯,必须有一种更简单、更自动的方法来做到这一点。 我基本上是在数据库中查询每个单选按钮。 这一切都有效,但实现更多对我来说会很痛苦,任何人都可以给我一些提示吗?
这就是我到目前为止所做的。
checkStatus.php
require_once 'connectdb.php';
$skap_NummerID_A1_1 = "A1-1";
$skap_NummerID_A1_2 = "A1-2";
$skap_NummerID_A1_3 = "A1-3";
$skap_NummerID_A1_4 = "A1-4";
$skap_NummerID_A1_5 = "A1-5";
//THIS IS LOCKER NUMBER A1_1
$displayStatus_query_A1_1 = "SELECT Skap_Nummer, Status FROM testskap WHERE Skap_Nummer ='$skap_NummerID_A1_1'";
$resultStatus_A1_1 = $connect_DB->query($displayStatus_query_A1_1);
if ($resultStatus_A1_1->num_rows > 0) {
//output data of each row
while($rowStatus_A1_1 = $resultStatus_A1_1->fetch_assoc()) {
$skap_sjekkStatus_A1_1 = $rowStatus_A1_1["Status"];
}}
//THIS IS LOCKER NUMBER A1_2
$displayStatus_query_A1_2 = "SELECT Skap_Nummer, Status FROM testskap WHERE Skap_Nummer ='$skap_NummerID_A1_2'";
$resultStatus_A1_2 = $connect_DB->query($displayStatus_query_A1_2);
if ($resultStatus_A1_2->num_rows > 0) {
//output data of each row
while($rowStatus_A1_2 = $resultStatus_A1_2->fetch_assoc()) {
$skap_sjekkStatus_A1_2 = $rowStatus_A1_2["Status"];
}}
//THIS IS LOCKER NUMBER A1_3
$displayStatus_query_A1_3 = "SELECT Skap_Nummer, Status FROM testskap WHERE Skap_Nummer ='$skap_NummerID_A1_3'";
$resultStatus_A1_3 = $connect_DB->query($displayStatus_query_A1_3);
if ($resultStatus_A1_3->num_rows > 0) {
//output data of each row
while($rowStatus_A1_3 = $resultStatus_A1_3->fetch_assoc()) {
$skap_sjekkStatus_A1_3 = $rowStatus_A1_3["Status"];
}}
//THIS IS LOCKER NUMBER A1_4
$displayStatus_query_A1_4 = "SELECT Skap_Nummer, Status FROM testskap WHERE Skap_Nummer ='$skap_NummerID_A1_4'";
$resultStatus_A1_4 = $connect_DB->query($displayStatus_query_A1_4);
if ($resultStatus_A1_4->num_rows > 0) {
//output data of each row
while($rowStatus_A1_4 = $resultStatus_A1_4->fetch_assoc()) {
$skap_sjekkStatus_A1_4 = $rowStatus_A1_4["Status"];
}}
//THIS IS LOCKER NUMBER A1_5
$displayStatus_query_A1_5 = "SELECT Skap_Nummer, Status FROM testskap WHERE Skap_Nummer ='$skap_NummerID_A1_5'";
$resultStatus_A1_5 = $connect_DB->query($displayStatus_query_A1_5);
if ($resultStatus_A1_5->num_rows > 0) {
//output data of each row
while($rowStatus_A1_5 = $resultStatus_A1_5->fetch_assoc()) {
$skap_sjekkStatus_A1_5 = $rowStatus_A1_5["Status"];
}}
skap.php
<input type="radio" id="A1-1" name="radios" value="A1-1" class="radio-toolbar-all-input" <?php if ($skap_sjekkStatus_A1_1 === "Aktiv") {echo "disabled";}?>>
<label class="<?php if ($skap_sjekkStatus_A1_1 === "Aktiv") {echo $changecsstoo_Aktiv;} else {echo $changecsstoo_Inaktiv;}?>" for="A1-1">A1-1</label>
<input type="radio" id="A1-2" name="radios" value="A1-2" class="radio-toolbar-all-input" <?php if ($skap_sjekkStatus_A1_2 === "Aktiv") {echo "disabled";}?>>
<label class="<?php if ($skap_sjekkStatus_A1_2 === "Aktiv") {echo $changecsstoo_Aktiv;} else {echo $changecsstoo_Inaktiv;}?>" for="A1-2">A1-2</label>
<input type="radio" id="A1-3" name="radios" value="A1-3" class="radio-toolbar-all-input" <?php if ($skap_sjekkStatus_A1_3 === "Aktiv") {echo "disabled";}?>>
<label class="<?php if ($skap_sjekkStatus_A1_3 === "Aktiv") {echo $changecsstoo_Aktiv;} else {echo $changecsstoo_Inaktiv;}?>" for="A1-3">A1-3</label>
<input type="radio" id="A1-4" name="radios" value="A1-4" class="radio-toolbar-all-input" <?php if ($skap_sjekkStatus_A1_4 === "Aktiv") {echo "disabled";}?>>
<label class="<?php if ($skap_sjekkStatus_A1_4 === "Aktiv") {echo $changecsstoo_Aktiv;} else {echo $changecsstoo_Inaktiv;}?>" for="A1-4">A1-4</label>
<input type="radio" id="A1-5" name="radios" value="A1-5" class="radio-toolbar-all-input" <?php if ($skap_sjekkStatus_A1_5 === "Aktiv") {echo "disabled";}?>>
<label class="<?php if ($skap_sjekkStatus_A1_5 === "Aktiv") {echo $changecsstoo_Aktiv;} else {echo $changecsstoo_Inaktiv;}?>" for="A1-5">A1-5</label>
我有大约 25 个,我需要制作更多,但我想知道是否有更简单的方法来做到这一点?
对于那些想知道的人,这是 http://prntscr.com/bjziml
最佳答案
是的,每当你发现自己重复这样的代码时,这通常是你需要使用简单循环的标志:
$displayStatusResults = [];
$displayStatusQuery = "SELECT Skap_Nummer, Status FROM testskap WHERE Skap_Nummer IN('A1-1','A1-2','A1-3','A1-4','A1-5')";
$result = $connect_DB->query($displayStatusQuery);
if ($result->num_rows > 0) {
while($row= $result->fetch_assoc()) {
$displayStatusResults[$row['Skap_Nummer']] = $row['Status'];
}
}
skap.php
<div class="row">
<?php $count=0;
foreach($displayStatusResults as $skap => $status): $count++;?>
<input
type="radio"
id="<?=$skap?>"
name="radios"
value="<?=$skap?>"
class="radio-toolbar-all-input"
<?= ($status === "Aktiv")? 'disabled':''?>>
<label
class="<?= ($status === "Aktiv")? $changecsstoo_Aktiv : $changecsstoo_Inaktiv?>"
for="<?=$skap?>">
<?=$skap?>
</label>
<?php if($count==8):?>
</div><!--end row--><div class="row">
<?php endif; $count=0;?>
<?php endforeach;?>
</div><!--end row-->
关于php - 获取个人记录并自动写入的更简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37991286/