解決策を見つけようとしています。同じ ID を使用して別のテーブルからデータを取得しようとしています。これが私のコードです
"SELECT * FROM menucat LEFT JOIN vmenutab ON menucat.cat_id = vmenutab.menu_id";
セクションを作成し、後でコンテンツを入力する必要があります。テーブル menucat はセクションを持つ親テーブルであり、vmenutab はコンテンツを持つ子テーブルです。しかし、問題があり、正しく表示されません。次のようになります。
セクション1
- リンク1
- リンク2
しかし、次のように表示されます。
セクション1
- リンク1
セクション1
- リンク2
検索を使用してきましたが、GROUP BY と DISTINCT は機能しませんでした。
テーブル:
menucat: cat_id menu_cat_est menu_cat_ru menu_cat_en
vmenutab: id (一意のリンク ID) menu_id (関連セクションへの ID) menu_name_est menu_name_ru menu_name_en
menu_cat_xxx と menu_name_xxx は異なる言語データです
PHPコード
<?php
$target = "SELECT * FROM menucat LEFT JOIN vmenutab ON menucat.cat_id = vmenutab.menu_id";
$mq = mysql_query($target);
while ($row = mysql_fetch_array($mq)) {
$menu_cat_est = $row['menu_cat_est'];
$menu_cat_ru = $row['menu_cat_ru'];
$menu_cat_en = $row['menu_cat_en'];
$menu_name_est = $row['menu_name_est'];
$menu_name_ru = $row['menu_name_ru'];
$menu_name_en = $row['menu_name_en'];
$cat_id = $row['cat_id'];
$id = $row['id'];
echo '<tr>
<td>' . $menu_cat_est . ''.$menu_name_est.'</td>
<td>' . $menu_cat_ru . ''.$menu_name_ru.'</td>
<td>' . $menu_cat_en . ''.$menu_name_en.'</td>
<td scope="col"><center><a href="content.php?veditcat=' . $cat_id . '"><img src="style/stylesheet/images/edit.png"></a></center></td>
<td scope="col"><center><a href="content.php?vdelcat=' . $cat_id . '"><img src="style/stylesheet/images/delete.png"></a></center></td>
<td scope="col"><center><a href="content.php?vadd=' . $cat_id . '">Добавить</a></center></td>
</tr>';
}
?>
私の英語でごめんなさい。よろしくお願いします。
編集: PHP コード全体を追加しました。編集 #2: 表の行を追加しました。