Как запретить пользователю изменять / удалять другие данные пользователя
Я создаю многопользовательское приложение. Создан с использованием php codeigniter. И я ищу лучший способ или лучший способ предотвратить изменение / удаление других данных пользователя.
У меня есть несколько реляционных таблиц.
- tbl_users (user_id, user_name, пароль)
- tbl_stores (store_id, user_id, store_name, store_url)
- tbs_products (product_id, store_id, product_name)
У каждого пользователя есть свой магазин, и в каждом магазине может быть много товаров.
Итак, что является лучшим способом, чтобы предотвратить удаление пользователем других данных пользователя?
Я на самом деле создал некоторый код в модели, но так как я новичок, я не уверен, что если это правильный путь, мой код такой.
function remove_product($product_id)
{
$this->db->from('products as p');
$this->db->join('stores as s', 's.id = p.store_id');
$this->db->where('p.id', $product_id);
$this->db->where('s.user_id', $this->session->userdata('id'));
if($this->db->count_all_results())
{
$this->db->where('id', $product_id);
return $this->db->delete($this->table);
}
}
Пожалуйста, сообщите, если этот подход правильный или нет, или есть лучший способ сделать это.
С уважением
1 ответ
Перед удалением чего-либо проверьте, совпадает ли владелец с пользователем сеанса.