Я хочу отобразить все категории, и я хочу установить выбранные свойства на несколько флажков.
<div class="col-md-10">
<?php
$allCategories = $category->getAllCategory();
if ($allCategories) {
$categoryAccess = $category_permitted->getCategoriesByUserId($user_info[0]->id);
foreach ($allCategories as $key => $items) {
if ($categoryAccess) {
foreach ($categoryAccess as $key => $value) {
?>
<input type="checkbox" name="cat_access[]" value=" <?php echo $items->id ?> " <?php echo (isset($categoryAccess) && @$categoryAccess[$key]->id == $items->id) ? 'checked' : '' ?>><?php echo $items->title?>
<?php
}
}
?>
<?php
}
}
?>
</div>
После циклического просмотра $categoryAccess
я выбрал два варианта, но все категории повторяются дваждывыход, т.е. категория 1, категория 1, категория 2, категория 2, категория 3, категория 3, категория 4, категория 4.
У меня есть 4 категории, в которых есть флажки, и для вывода необходимо проверить 2 категории.Я получаю ошибку в <?php echo (isset($categoryAccess) && $categoryAccess->id == $items->id) ? 'selected' : '' ?>
, она выдает эту ошибку: пытается получить свойство 'id' не-объекта, а когда я делаю <?php echo (isset($categoryAccess) && $categoryAccess[0]->id == $items->id) ? 'selected' : '' ?>
, она выдает данные, но только с индексом 0.
var_dump($categoryAccess)
:
array(2)
{
[0]=> object(stdClass)#6 (3)
{
["id"]=> string(1) "1"
["user_id"]=> string(1) "2"
["title"]=> string(25) "category1"
}
[1]=> object(stdClass)#20 (3)
{
["id"]=> string(1) "3"
["user_id"]=> string(1) "2"
["title"]=> string(18) "category2"
}
}