СВЯЗЬ МНОГИЕ КО МНОГИМ PHP
Связь многие ко многим является одним из наиболее часто используемых типов связей в базах данных и позволяет связывать несколько записей в таблице A с несколькими записями в таблице B.
Для реализации связи многие ко многим в PHP необходимо создать промежуточную таблицу, которая будет связывать первичные ключи таблицы A и B. Например:
$sql = "CREATE TABLE a (    id INT(11) AUTO_INCREMENT PRIMARY KEY,    name VARCHAR(255) NOT NULL    );        CREATE TABLE b (    id INT(11) AUTO_INCREMENT PRIMARY KEY,    name VARCHAR(255) NOT NULL    );        CREATE TABLE ab (    a_id INT(11) NOT NULL,    b_id INT(11) NOT NULL,    PRIMARY KEY (a_id, b_id),    FOREIGN KEY (a_id) REFERENCES a(id),    FOREIGN KEY (b_id) REFERENCES b(id)    );"Эта конструкция создает три таблицы: a, b и ab. Таблица ab является промежуточной таблицей и содержит только первичные ключи из таблиц A и B. Для добавления записей и установки связей между таблицами необходимо выполнить следующий код:
$pdo = new PDO("mysql:host=localhost;dbname=mydb", "username", "password");    $pdo->exec($sql);        $a_id = 1;    $b_id = 2;        $pdo->exec("INSERT INTO ab (a_id, b_id) VALUES ($a_id, $b_id)");    "Этот код добавит в таблицу ab запись, которая свяжет запись номер 1 из таблицы A с записью номер 2 из таблицы B. Таким образом, связь многие ко многим в PHP реализуется созданием промежуточной таблицы и выполнением операций добавления, удаления и изменения записей в этой таблице.
ВЕБСОКЕТЫ // ПРИНЦИП РАБОТЫ
Интернет магазин с нуля на php Выпуск №86 Метод для добавления связей многие ко многим в БД
Базы данных - Связь многие ко многим - SQL проще некуда
Интернет магазин с нуля на php Выпуск №74 Mysql связи многие ко многим (mysql many to many)
Уроки по SQL - Создание таблиц, добавление и выборка данных - Связь многие ко многим
(пояснение) sql Многие ко многим как делать SELECT. Простая CMS на PHP и MySQL


















