Php 获取单个记录并自动写入记录的更简单方法
必须有一种更简单、更自动的方法来实现这一点。 我基本上是查询每个单选按钮的数据库。 这一切都是工作,但这将是一个痛苦的我实施更多的,谁能给我一些提示 这就是我到目前为止所做的 checkStatus.php skap.phpPhp 获取单个记录并自动写入记录的更简单方法,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.'"
$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停止。