кодовая корзина покупок и несколько столов - PullRequest
0 голосов
/ 20 февраля 2012

Я довольно плохо знаком с codeigniter и пытаюсь лучше узнать базы данных, поэтому я решил следовать этому руководству .

Однако я хочу пойти немного дальше иПопробуйте на нескольких страницах с несколькими таблицами, у меня вроде получилось, что он наполовину работает, но когда я нажимаю кнопку добавить в корзину, он всегда выбирает элемент из базы данных 1. Он использует

$this->db->where('id', $id);  
$query = $this->db->get('fruit', 1);  

, чтобы добавить элемент ккорзина.Но я хочу, чтобы он мог выбирать из более чем одной таблицы, например.фрукты и овощи, где они будут находиться в другой таблице, но иметь одинаковые столбцы, есть ли способ легко сделать это с помощью объединений или любым другим способом?

1 Ответ

1 голос
/ 20 февраля 2012

Да, вы просматривали активную запись codeigniter ?

Something like?
$this->db->select('*');
$this->db->from('fruit');
$this->db->join('veg', 'fruit.id = veg.id');

$query = $this->db->get();

// Produces:
// SELECT * FROM fruit
// JOIN veg ON veg.id = fruit.id

Редактировать: Из вашего описания в вашем комментарии я построил эти две таблицы.1008 * Это пример функционального теста с использованием множественных и объединений.Я думаю, что это ваш последний SQL-запрос?

SELECT *
FROM (`fruit`)
JOIN `veg` ON `fruit`.`id` = `veg`.`id` and fruit.name = veg.name and fruit.price = veg.price
WHERE `fruit`.`id` =  1

И это соответствующий запрос codeigniter.

public function testJoins() {
    $id = 1;
    $this->db->select('*');
    $this->db->from('fruit');
    $this->db->join('veg', 'fruit.id = veg.id and fruit.name = veg.name and fruit.price = veg.price');
    $this->db->where('fruit.id', $id);

    $query = $this->db->get();
    return $query->result();
}
...