У меня возникли проблемы со связями многие ко многим с простым разрабатываемым модулем ACL.
У меня есть три таблицы:
Группы
Права доступа
RelPermissionsGroup
- * id_relation
- группа
- разрешение
Итак, у меня был этот запрос
SELECT * FROM acl_groups
LEFT OUTER JOIN acl_RelPermissionsGroup
ON acl_groups.id_group = acl_RelPermissionsGroup.group
LEFT OUTER JOIN acl_permissions
ON acl_permissions.id_permission = acl_RelPermissionsGroup.permission
WHERE id_group > 0
Если я сделаю запрос в phpmyadmin, то все будет хорошо. Таким образом, он показывает всем группам, есть ли у них разрешения или нет, а также показывает их.
Я вижу здесь одну проблему: атрибут name повторяется. Как я могу псевдоним каждого поля?
Но это не проблема.
Проблема в том, что выполнение mysqli_fetch_assoc работает нормально, за исключением группы, у которой нет никаких разрешений. Вот что выводит:
Array (
[id_group] => 2
[name] =>
[id_relation] =>
[group] =>
[permission] =>
[id_permission] =>
)
Идентификатор группы в порядке, но учитывая тот факт, что поля дублируются, он переопределяет их. Кроме того, id_group и id_permission, кажется, дублируются с группой и разрешением соответственно.
Что мне делать?