Php 获取单个记录并自动写入记录的更简单方法

Php 获取单个记录并自动写入记录的更简单方法,php,html,css,sql,Php,Html,Css,Sql,必须有一种更简单、更自动的方法来实现这一点。 我基本上是查询每个单选按钮的数据库。 这一切都是工作,但这将是一个痛苦的我实施更多的,谁能给我一些提示 这就是我到目前为止所做的 checkStatus.php skap.php $nummers = array("A1-1", "A1-2", "A1-3", "A1-4", "A1-5"); foreach($nummer as $nummer) { echo '<input type="radio" id="'.$nummer.'"

必须有一种更简单、更自动的方法来实现这一点。 我基本上是查询每个单选按钮的数据库。 这一切都是工作,但这将是一个痛苦的我实施更多的,谁能给我一些提示

这就是我到目前为止所做的

checkStatus.php

skap.php

$nummers = array("A1-1", "A1-2", "A1-3", "A1-4", "A1-5");
foreach($nummer as $nummer) {
    echo '<input type="radio" id="'.$nummer.'" name="radios" value="'.$nummer.'" class="radio-toolbar-all-input" '.($output[$nummer] === "Aktiv") ? "disabled" : "").'>
        <label class="'.($output[$nummer] === "Aktiv") ? $changecsstoo_Aktiv : $changecsstoo_Inaktiv).'" for="'.$nummer.'">'.$nummer.'</label>';
}
<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-->
我有25个,我需要做更多,但我想知道有没有更简单的方法

对于那些想知道的人,这是

checkstatus.php

$nummers = array("A1-1", "A1-2", "A1-3", "A1-4", "A1-5");
$output = array();

foreach($nummers as $nummer) {
    $output[$nummer] = array();
    //THIS IS LOCKER NUMBER A1_1
$query = "SELECT Skap_Nummer, Status FROM testskap WHERE Skap_Nummer ='$nummer'";
$result = $connect_DB->query($query);
if ($result->num_rows > 0) {
    //output data of each row
    while($row = $result->fetch_assoc()) {
        $output[$nummer][] = $row["Status"];
    }}
}
skap.php

$nummers = array("A1-1", "A1-2", "A1-3", "A1-4", "A1-5");
foreach($nummer as $nummer) {
    echo '<input type="radio" id="'.$nummer.'" name="radios" value="'.$nummer.'" class="radio-toolbar-all-input" '.($output[$nummer] === "Aktiv") ? "disabled" : "").'>
        <label class="'.($output[$nummer] === "Aktiv") ? $changecsstoo_Aktiv : $changecsstoo_Inaktiv).'" for="'.$nummer.'">'.$nummer.'</label>';
}
<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-->

您应该从一些配置文件中获得$numers数组是的,每当您发现自己重复这样的代码时,通常需要使用一个简单的循环:

$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

$nummers = array("A1-1", "A1-2", "A1-3", "A1-4", "A1-5");
foreach($nummer as $nummer) {
    echo '<input type="radio" id="'.$nummer.'" name="radios" value="'.$nummer.'" class="radio-toolbar-all-input" '.($output[$nummer] === "Aktiv") ? "disabled" : "").'>
        <label class="'.($output[$nummer] === "Aktiv") ? $changecsstoo_Aktiv : $changecsstoo_Inaktiv).'" for="'.$nummer.'">'.$nummer.'</label>';
}
<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-->

非常接近我想要的,但是当我想要它们如图所示时呢?非常感谢。btw@Nniouz我不确定你的意思,我可能遗漏了一些东西,但据我所知,html应该与我的代码相同,所以它应该显示相同的内容?嘿,史蒂夫,如果我想让行从A1-1开始,在A1-8停止,然后在下面继续。A2-1从A2-8开始到A2-8结束?@Nniouz在循环中添加一个计数器,当它达到所需计数时,关闭当前行,开始一个新行,然后重置计数器。我问你这么多,感觉像个白痴。它给了我一个错误:at$count++:,所以我删除了:现在它显示出来了,但它并没有在8停止。