У меня есть флажки, которые нужно показать отмеченным, если значения статьи совпадают. Однако теперь мне нужно применить это в check-box html, но я не могу обернуть ввод внутри foreach, поскольку он не работает для того, что мне нужно.
Как поместить проверенное значение внутри html без его обертывания внутри foreach?
PHP:
<?php
foreach($searchRows as $searchRow) {
if ($article->id==$searchRow->aid) {
$true = 'checked="checked"';
}
}
?>
HTML:
<input type="checkbox" <?php echo $true;?>/>
Вышеприведенный код показывает, что каждый флажок установлен. Я хочу, чтобы только совпадающие значения проверялись.
Приветствия Джона
Ваш подход правильный, но сначала вы должны определить значение $true
blank, если вы этого не сделаете, как только ваше условие if будет соответствовать после этого, каждый раз, когда $true
останется 'checked="checkexd"'
.
Используйте этот код
<?php
$true = ''; //Define first blank the variable
foreach($searchRows as $searchRow) {
if($article->id==$searchRow->aid){
$true = 'checked="checked"';
} }
?>
<input type="checkbox" <?php echo $true;?>/>
Сохраните в массиве их печать соответственно -
foreach($searchRows as $searchRow) {
if($article->id==$searchRow->aid){
$true[$article->id] = 'checked="checked"';
} else {
$true[$article->id] = '';
}
}
А во входном -
<input type="checkbox" <?php echo $true[$articleId];?>/> // Something like this
Если вы печатаете флажки для статьи.
$article->id==$searchRow->aid
удовлетворяет, тогда остальные флажки также будут отмечены ??