Правильно ли я объединила 3 таблицы?

Katerina1993

Новичок
У меня есть три таблицы которые нужно объединить для указания путей, названий и формирования ссылок, все записи находятся в трёх таблицах settings, photo_catalog, file_path и все эти записи связаны с photo_position, так что даже не три а четыре таблицы получается. Подскажите правильно ли я всё сделала, а то такое объединение я делаю в первые? Так же в коде есть комментарии, за что отвечает каждая таблица.
PHP:
//settings - раздел например игры и фильмы
     //categria - категория например жанр игры и фильма (игры - rpg, rts, гонки), (фильмы - комедии, боевики, ужасы)
     //все категории входят в раздел
     //photo_position - размещены фотографии
     //filepath - путь к файлу фотографии в photo_position есть поле pathid.
     //Это поле ссылается на filepath для указания пути к картинке, можно конечно путь хранить в
     //photo_position но если вдруг
     //я захочу поменять пути то придётся менять все записи в photo_position
    
     $query="SELECT m.pathid pathid,m.id id, k1.id id, s.id id, s1.section section,s1.id id, k1.path path, m.big
     big, m.small small, s.page page, s1.title_url title_url, s1.title title2, m.title title
                FROM photo_position m
                    LEFT JOIN filepath k1 ON m.pathid = k1.id
                    LEFT JOIN photo_catalog s1 ON m.id = s1.id
                    LEFT JOIN settings s ON s1.section = s.id WHERE m.id=1";
    $res=mysql_query($query);
    
    
    echo "<table border=1>";
    echo "<tr>Галерея</tr>";
    $i = 1;
    $tr == 0;
    $tr1 = 3;
    $countcol = 3;
    while($m=mysql_fetch_assoc($res)){
  
    if($countcol == 3)
    {
    
     if ($tr == 0) echo "<tr class=\"main_txt\">";
    echo "<td><table><tr><td>id=$i</td><td>
    <img alt=\"$m[title]\" src=\"/$m[path]/$m[small]\"></td></tr>
    <tr><td>Эта картинка расположена в категории: <a target=\"_blank\" href=\"/$m[page]/photo/$m[title_url]/$m[id]-1/\">$m[title2]</a></td></tr></table></td>";
    }     
        if (++$tr == $tr1)
        {
          echo "</tr>";
          $tr = 0;
        }
        $i++;
    }
    if($tr != 0)
    {
         for($i = $tr; $i < $countcol; $i++)
         {
            echo "<td align=center>&nbsp;</td>";
         }
         echo "</tr>";
    }
    echo "</table>";  [/CODE=php]
 

nllabs

Новичок
Кроме того, я порекомендовал бы разделить бизнес-логику и логику отображения.
Удобно использовать такие конструкции ?
PHP:
<td>Эта картинка расположена в категории: <a target=\"_blank\" href=\"/$m[page]/photo/$m[title_url]/$m[id]-1/\">$m[title2]</a></td>

или это:

echo "<td align=center>&nbsp;</td>";
         }
         echo "</tr>";
    }
    echo "</table>";
 

Katerina1993

Новичок
Удобно использовать такие конструкции ?
Не знаю я этот пример ещё взяла из книги 2008 года, про то как создать сайт, Кузнецов написал, там ещё были исходники движка полноценного сайта, написанного с нуля. Так вот эта конструкция из галереии которые выводила записи три в ряд. Вообщем пример я взяла от туда когда читала книгу с тех пор больше этот фрагмент кода не меняла.
 
Сверху