我正在使用Codeigniter框架在PHP中创建一个电子商店,但我已经堆叠,如何设计数据库。我的想法是,这个电子商店将有一个充满功能和设置的后端(创建类别,颜色,添加商品,文件管理器功能,以及更多)。但是,每个用户都有他/她自己的类别,自己的颜色,自己的商品......所以用户之间可能没有任何共同点。用户拥有唯一的u_ids。我应该为我正在使用的每个表添加用户ID吗?我举一个例子说明我想要做的事情:
public function add_type_by_e_id($data = array(), $e_id = 0) {
if (!is_numeric($e_id)) {
$e_id = 0;
}
if (is_array($data) && count($data) > 0) {
$data['e_id'] = $e_id;
$this->db->insert($this->types, $data);
return $this->db->insert_id();
}
return false;
}
public function get_all_types_by_e_id($e_id = 0) {
if (!is_numeric($e_id)) {
$e_id = 0;
}
$this->db->from($this->types);
$this->db->where('e_id', $e_id);
$this->db->order_by('type', 'ASC');
$query = $this->db->get();
$result = $query->result();
$query->free_result();
if (count($result) > 0) {
return $result;
}
return false;
}
public function get_type_by_t_id_e_id($t_id = 0, $e_id = 0) {
if (!is_numeric($e_id)) {
$e_id = 0;
}
if (is_numeric($t_id) && $t_id > 0) {
$this->db->from($this->types);
$this->db->where('t_id', $t_id);
$this->db->where('e_id', $e_id);
$query = $this->db->get();
$result = $query->result();
$query->free_result();
if (count($result) > 0) {
return $result[0];
}
}
return false;
}
(实际上,$ e_id是用户标识符。)我的问题是,这是否是最好和最简单的方法。这个" $ e_id的想法"是的,我担心,如果在这种情况下没有$ e_id,一些用户(或者应用程序中的错误)可以获取另一个用户的数据。
谢谢你,我在等你的问题,因为我觉得这有点令人困惑。 :)
彼得