• 締切済み

親子構造を持つ記事の表示レイアウト案

いつもお世話になっています。 親子構造を持つ記事を、1画面(スクロール無し)で表示させる画面レイアウトに悩んでいます。 アドバイスなど頂ければ嬉しいです。  ---------------------------------------------------------------  【前提仕様】   ・ 表示させる記事の構造は、親子関係(親1 対 子n)である。       1 - 1 . 親記事        |        |-- 1 - 2 . 子記事        |        |-- 1 - 3 . 子記事        |        |-- 1 - 4 . 子記事   ・ 1画面に表示させる記事情報は、事前に1変数に格納出来ている。   ・ php + mysql + html + css + javascript で実現可能とする。  ---------------------------------------------------------------  【希望仕様】   ・ 1画面上で記事情報を手軽に切換(親記事や子記事)させたい。     ※ 2-1記事や3-1記事は考慮しない。(あくまで1-1 ~ 1-nまでの親子記事)   ・ 縦横が固定されている画面領域で、スクロールする事無く記事を参照させたい。  以上、説明不足な点があるかも知れませんが、ご教授頂けますか。

みんなの回答

回答No.2

DBの構造としたら ・記事No(主キー) ・親子関係(トップの親は0を入れて子の記事は親の記事Noを入れておく) ・記事 こんな感じのテーブルを用意する。 でデータの表示にはアコーディオンメニューやドロップダウンメニューなどを利用すればいい。 >1画面上で記事情報を手軽に切換(親記事や子記事)させたい。 これをやるならAJAXの領域。

atlas112
質問者

お礼

早速のご回答ありがとうございます。 アコーディオンメニューというのは思いつきませんでした。 その方法もありますね。 >>1画面上で記事情報を手軽に切換(親記事や子記事)させたい。 >これをやるならAJAXの領域。  AJAXは諸事情により実装出来ませんので、希望仕様を再検討してみます。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

まずデータの持たせ方としてはMySQLでは親文書フィールドをつくり 親文書のIDを保存させておけばよいでしょう。 SQL文は親文書をもたないレコードに対して、親文書をもつデータを LEFT JOINするような書式になると思います HTMLの構造的にはUL-LIで構成することになるでしょう。 表示としてはCSSでリストスタイルをはずしてブロック表示をすればよいでしょう >縦横が固定されている画面領域で、スクロールする事無く 矛盾しているような気がしますが・・・ オーバーフローしたらどうするのですか?

atlas112
質問者

補足

早速のご回答ありがとうございます。 DB構造については、ご指摘頂いた内容を検討中でした。 アドバイスありがとうございます。 >>縦横が固定されている画面領域で、スクロールする事無く >矛盾しているような気がしますが・・・ >オーバーフローしたらどうするのですか?  縦横が固定されている という表現が誤解を与えてしまったようです。  希望している画面仕様として、”ユーザにスクロール操作をさせない”  という点があります。  1画面内であれば、インラインフレームを使用する手法もありますが、いまひとつ納得出来ず、より良い手法を検討中です。