PHP を使用して、同じ値で接続されている 3 つのテーブルの結果をリンクしようとしています。次に、関連する結果の各動的セットを、ページ上で while ループとして繰り返すようにします。これは私が望む結果です:
アーティスト->
シリーズ1→ピース1、ピース2 シリーズ2→ピース3、ピース
4
アーティスト テーブルとシリーズ テーブルは、「アーティスト」という名前の一致する列を共有します。シリーズとピース テーブルには、一致する列名「シリーズ」があります。これらのテーブルは、別のページでカスケード削除が機能しているため、データベース内の同じ一致する値を介してリンクされていることがわかっています。
現在、シリーズはエコー リピート ループとしてのみ表示されますが、いずれの側にもアーティストや作品は関連付けられていません。そのように: http://www.exhibitjewellery.com/artistindex.php
mysql_fetch_assoc が正しい方法であるかどうかはわかりません。テーブルがまったく正しくリンクされているのか、それとも書式設定のために本文セクションをどのように分割したかに問題があるのか について混乱しています。多次元配列が役立つか、テーブルをネストすることさえあると感じていますが、コードの各セクション全体ですべての詳細がどのように組み合わされるかを完全には把握していません。助けてください!
頭の上のPHP:
<?php
mysql_select_db($database_connectmysql, $connectmysql);
$query_artistrecordset = "SELECT * FROM artists ORDER BY artist ASC";
$artistrecordset = mysql_query($query_artistrecordset, $connectmysql) or die(mysql_error());
$row_artistrecordset = mysql_fetch_assoc($artistrecordset);
$totalRows_artistrecordset = mysql_num_rows($artistrecordset);
mysql_select_db($database_connectmysql, $connectmysql);
$query_seriesrecordset = "SELECT * FROM series, artists WHERE series.artist=artists.artist ORDER BY exhibition ASC";
$seriesrecordset = mysql_query($query_seriesrecordset, $connectmysql) or die(mysql_error());
$resultseries = mysql_query($query_seriesrecordset);
$row_seriesrecordset = mysql_fetch_assoc($resultseries);
$totalRows_seriesrecordset = mysql_num_rows($seriesrecordset);
mysql_select_db($database_connectmysql, $connectmysql);
$query_piecerecordset = "SELECT * FROM pieces,series WHERE pieces.piece=series.series ORDER BY piece ASC";
$piecerecordset = mysql_query($query_piecerecordset, $connectmysql) or die(mysql_error());
$resultpiece = mysql_query($query_piecerecordset);
$row_piecerecordset = mysql_fetch_assoc($resultpiece);
$totalRows_piecerecordset = mysql_num_rows($piecerecordset);
?>
これは私がそれを体にエコーしようとした方法です:
<div id="serieslist" align="right">
<?php echo $row_artistrecordset['artist']; ?><br />
<?php echo $row_artistrecordset['website']; ?><br />
<?php echo $row_artistrecordset['artist_statement']; ?><br />
<?php do { ?>
<?php echo $row_seriesrecordset['series']; ?><br />
<?php echo $row_seriesrecordset['exhibition']; ?><br />
<?php echo $row_seriesrecordset['series_statement']; ?><br />
<?php do { ?>
<?php echo $row_piecerecordset['piece']; ?><br />
<?php echo $row_piecerecordset['description']; ?><br />
<?php echo $row_piecerecordset['category']; ?><br />
<?php echo $row_piecerecordset['dimensions']; ?><br />
<?php echo $row_piecerecordset['price']; ?><br />
add to collection button<br />
<?php } while ($row_piecerecordset = mysql_fetch_assoc($resultpiece)); ?>
<?php } while ($row_seriesrecordset = mysql_fetch_assoc($resultseries)); ?>
</div>
</body>
</html>
<?php
mysql_free_result($artistrecordset);
mysql_free_result($seriesrecordset);
mysql_free_result($piecerecordset);
?>
私はこれに何日も取り組んできたので、どんな助けも大歓迎です!