私は特定の記事を記録するための参照があります。参考文献は、記事、書籍、論文などのタイプのものであってもよい。 それぞれは異なる属性を有する可能性がある。別のテーブルで注文されたmysqlテーブルから値を取得する方法は?
//article_refs table
ID Article_ID Article_Title Author_Name ...
1 1 title1 author1
2 1 title2 author2
//thesis_refs table
ID Article_ID Thesis_Title Thesis_Publisher ...
1 1 thesis1 publisher1
2 1 thesis2 publisher2
//ref_types table
ID Article_ID ReferenceType
1 1 book
2 1 article
3 1 article
4 1 book
私がテーブルの1つに挿入するとき、最初にその型(ブック、記事)を持つref_typeテーブルに挿入されます。それが属しているテーブルを挿入します。 (例:記事の場合は記事テーブルに挿入します)
今、リスト参照を順番に行うことができます。
$sql=mysql_query("SELECT * FROM ref_types
WHERE $article_ID=Article_ID ORDER BY ID ASC");
while($row = mysql_fetch_array($sql)){
$counter=1;
if($row[2]=="thesis"){
$sqlthesis=mysql_query("SELECT * FROM thesis_refs
WHERE $article_ID=Article_ID
ORDER BY ID ASC");
while($thesis_row = mysql_fetch_array($sqlthesis)){
echo "record $counter: ";
echo $row[2];
echo ", ";
echo $thesis_row[2];
echo "<BR>";
$counter++
}
}elseif.....
それはarticleテーブルなどを一覧表示し、すべての論文のレコードを示しています。この方法は...
record 1: book1
record 2: book2
record 3: article1
record 4: article2
私はそれが理由while
ループの単純ですけど、ref_typesテーブルで、この(同じ順序を取得する方法。 。)??
record 1: book1
record 2: article1
record 3: article2
record 4: book2
ご了承ください。 ありがとうございます。
をもref_thesisテーブルを示し、してくださいテーブル間の主要な関係 –
こんにちは、上記のものと同じ構造をしています。 私は – teutara
を編集しました。私はあなたの誤植を修正します。 –