-42 / 17 / 15
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
1

Данные из нескольких таблиц

14.02.2016, 10:43. Показов 505. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброй ночи.

Такая проблема у меня.


У меня есть в одной таблице категории характеристик

А во второй таблице есть список значений с привязкой к определенному категорию.

А в третем есть идентификатор товара, идентификатор значения, значение характеристики.

Вот как сделать так чтобы она прошлась по всем 3 таблицам и получить список Категорий в которые заполнены значения.



Вот пример

PHP
1
2
3
4
5
6
7
8
9
10
11
12
        $q = $mysql::query("SELECT * FROM `patterncat`");
        
        foreach ($q::fetchAl() as $value) 
        {
            $cat = $mysql::query("SELECT * FROM `pattern` WHERE `parent_id` = ?",[$value->id])->fetchArray();    
 
            if($cat['parent_id'] == $value->id) 
            {
                echo '<tr class="q123 collapsed">
                    <td class="SpecialCharactersHr" colspan="2">'.$value->name.'</td>
                </tr>';
            }
Таблица `patterncat` -- Тут список категорий характеристик в ней (id,name)
Таблица `pattern` -- Тут список значений (id,parent_id,name) (parent_id -- Это ID категории)
Таблица `tovar_pattern` -- Тут список характеристик которых заполнил автор (id,id_item, id_parent,name)

(id_item - Идентификатор товара, id_parent -- Идентификатор значения характеристики, name -- Название).


Вот описал все что мог если что задайте я отвечу.

Просто уже 2 день не могу разобраться вот код который писал он выводит но он не проходит по id товару.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.02.2016, 10:43
Ответы с готовыми решениями:

Вывести данные из нескольких таблиц
Привет! Есть таблицы: tickets (билеты на матчи, купленные пользователями): id|uid|match_id...

Как правильно считать и совместить данные с нескольких таблиц?
Привет! Есть 3 таблицы: teams: id|name|country_id 1|Одуванчики|ru 2|Ромашки|ua...

Выбрать данные из нескольких таблиц только по существующим значениям в таблицах
$result = mysqli_query( $this-&gt;db, &quot;SELECT a.*, u.*, uc.* FROM...

Пытаюсь вытащить данные из двух таблиц, но данные попадает только из одной. Что мне делать?
Здравствуйте вот таким образом пытаюсь вытащить с двух таблиц данные но данные попадает только с...

11
2169 / 1652 / 840
Регистрация: 10.01.2015
Сообщений: 5,190
14.02.2016, 11:20 2
Вам скрипт ошибки не выдает???
Я ООП не знаю, но уверен, что fetchAl пишется с 2мя "l".
PHP
1
$cat = $mysql::query("SELECT * FROM `pattern` WHERE `parent_id` = ?",[$value->id])->fetchArray();
А что это за запятая ",[ ?? Насколько я понимаю, здесь Вы конкатенируете. Значит, точка нужна.
0
-42 / 17 / 15
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
14.02.2016, 11:30  [ТС] 3
fetchAl() - это mysql_fetch_array(),

Чтобы понятнее было

PHP
1
$mysql::query("SELECT * FROM `pattern` WHERE `parent_id` = '{$value->id}'")->fetchArray();
0
2169 / 1652 / 840
Регистрация: 10.01.2015
Сообщений: 5,190
14.02.2016, 11:33 4
Цитата Сообщение от Shamsik Посмотреть сообщение
fetchAl() - это mysql_fetch_array(),
из мануала
$result = $sth->fetchAll();
Видите разницу?
0
-42 / 17 / 15
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
14.02.2016, 11:34  [ТС] 5
Логика такая же только небольшая модификация.

PHP
1
2
3
4
5
6
7
8
9
10
  public function fetchAl()
  {
    $return = array();
    if ($this->_default_result_type == 'object') {
      $return = $this->fetchAllObject();
    } else if ($this->_default_result_type == 'array') {
      $return = $this->fetchAllArray();
    }
    return $return;
  }
0
2169 / 1652 / 840
Регистрация: 10.01.2015
Сообщений: 5,190
14.02.2016, 11:38 6
Цитата Сообщение от Shamsik Посмотреть сообщение
public function fetchAl()
Понятно. Пользовательская функция.
0
-42 / 17 / 15
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
14.02.2016, 11:54  [ТС] 7
Ребята незнаете да как решить эту проблему очень нужно пожалуйста.
0
576 / 514 / 253
Регистрация: 26.09.2010
Сообщений: 2,603
14.02.2016, 11:59 8
Цитата Сообщение от Shamsik Посмотреть сообщение
Ребята незнаете да как решить эту проблему
составить запрос используя JOIN
0
Hello Kitty
690 / 562 / 402
Регистрация: 12.02.2016
Сообщений: 1,436
Записей в блоге: 1
14.02.2016, 12:10 9
Цитата Сообщение от Shamsik Посмотреть сообщение
Ребята незнаете да как решить эту проблему очень нужно пожалуйста.
Опишите с примерами( что есть в 3х таблицах и что должно вывести ).
0
-42 / 17 / 15
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
14.02.2016, 12:17  [ТС] 10
Описание по таблицам сверху.

Выводить нужно категории характеристик
0
Hello Kitty
690 / 562 / 402
Регистрация: 12.02.2016
Сообщений: 1,436
Записей в блоге: 1
14.02.2016, 12:19 11
Цитата Сообщение от Shamsik Посмотреть сообщение
Описание по таблицам сверху.
Выводить нужно категории характеристик
приведите строки таблиц.
приведите что в итоге должно получится.
0
576 / 514 / 253
Регистрация: 26.09.2010
Сообщений: 2,603
14.02.2016, 12:20 12
Shamsik, если правильно понял то связь у вас такая
Таблица `tovar_pattern` связана с Таблица `pattern` по `pattern`.`id` = `tovar_pattern`.`id_item`, а
Таблица `pattern` связана с Таблица `patterncat` по `patterncat`.`id` = `pattern`.`parent_id`
то наверно както так
SQL
1
2
3
4
SELECT TP.name FROM tovar_pattern TP
INNER JOIN pattern PA ON TP.id_item = PA.id
INNER JOIN patterncat PC ON PA.parent_id = PC.id
WHERE тут условие по которому выводить
0
14.02.2016, 12:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.02.2016, 12:20
Помогаю со студенческими работами здесь

Объединить данные с нескольких таблиц
Здравствуйте добрые люди! надо объеденить данные об отсутствующих товарах в разных городах в один...

Данные страницы из нескольких таблиц
Есть 2 таблицы: cpp_page {id, title, description} cpp_screens {pageid, url, alt} Чтобы получить...

DataGrid, DataView и данные из нескольких таблиц…
Подскажите пожалуйста, 1) Как вывести данные из нескольких таблиц одновременно в одном элементе...

Вывести данные из нескольких таблиц в QRep
Имеется форма на которой пользователь создает таблицы и заполняет их. По нажатию кнопки необходимо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru