Я написал код для добавления и обновления пользователей, а также хочу добавлять и обновлять категории, в которых они могут работать. Добавленные пользователи попадут в таблицу пользователей, а категории, к которым они могут получить доступ, - в таблицу category_permitted.У меня есть следующий код для добавления и обновления таблиц:
if ($user_info) {
if ($act == "add") {
if ($user_info) {
$array = array(
'user_id' => $user_info,
'category_id' => $temp['cat_access']
);
$category_permitted->addCategoryAccess($array);
}
} else {
if ($user_info) {
$array = array(
'user_id' => $id,
'category_id' => $temp['cat_access']
);
$deleteold = $category_permitted->deleteCategoryAccess($id);
$category_permitted->addCategoryAccess($array);
}
}
}
Это моя функция для добавления и обновления доступа к категории:
public function addCategoryAccess($data, $is_die = false){
return $this->insert($data, $is_die);
}
public function updateCategoryAccess($data, $id, $is_die = false){
$args = array(
'where' => array('user_id' => $id),
);
return $this->update($data, $args, $is_die);
}
И это данные в таблице базы данных .
Моя функция обновления обновляет все данные столбца category_id с добавляемым номером при обновлении доступа к категории для пользователя.
Я хочу оставить 2 и 3как есть, и добавьте другой идентификатор категории, равный 1, но после запуска кода обновления он обновляет данные следующим образом. Нужно ли добавить еще одно условие к WHERE CLAUSE
, чтобы получить ожидаемый результат?