PHPなんだし、コードもいじれるんだから
インターフェースだけ用意して未対応DBは自分で実装しる!ってのが美しいような。
636 :
nobodyさん:05/01/18 21:12:23 ID:nh+tmoCq
DB使う場合と、ファイル使う場合では、完全に形式を変えます。
データ構造そのものを極端に変えます。
一切の互換性はありません。
637 :
nobodyさん:05/01/18 21:22:36 ID:nh+tmoCq
たぶんわかりにくいと思うので補足しておきます。
> そういう下請け部分を固定化する設計自体がダメダメだろ?
下請け部分を固定化していないBBSで成功しているものを考えてください。
どうですか?
完全に間違った考え方だとわかったでしょう?
>>636-637 |l |l l |l | |i
|i l |i l| li |
∩
_,,..,,n,r'゙ <⌒つ
./ ゚ 3 ヽ )´
) l ゚ ll ∩ ノ そ
Σ `'ー---‐'' (
⌒ヽ/V⌒v、/⌒ ビダァァァン!!
設置難易度高めでもDBを生かした多機能掲示板がいいなぁ。
最近はレンタルも選択肢多くてカスタマイズもできるから普通の掲示板はいらない。
難易度とDB利用は必ずしも比例しない。
正しく設計を行えば掲示板の処理からバックエンドのDBやファイルシステムを
意識することなく投稿や閲覧が出来る。
DBのインストールがあるから難易度が高いってのは別問題。
そもそも掲示板システム側でDBMSのインスコまでどうこう出来る訳ではないので
SB使いたい人は自分で頑張ってもらう。それがいやならファイルでやれ。
>>640 それは分かったけど、つまり、あんたはDB使用おkってことか?
642 :
nobodyさん:05/01/19 03:22:59 ID:wUvziEtM
>>640 それじゃ、雛形作って見せてください。
それから考えましょう。
配布先?誰が使ってるか知りたい、って?w
配布してなさそうだから配布先は無いんじゃないの
掲示板て1から作れないほど大変で巣かな?
age
掲示板なんて作りたい放題作れるJan-Yo
DB使おうと使わないようにするもやりたい放題Jan-Yo
入門書最初っからちゃんと進めていけばできるYo
649 :
nobodyさん:2005/07/07(木) 01:09:22 ID:gjggPGY2
ちょいと質問させてください。
PHP+MySQLで掲示板を作ろうとしています。
テーブルの構造は、
+------+-------+-------+-------------+
| ID | resID | name | text |
+------+-------+-------+-------------+
| 1 | 0 | 太郎 |テスト書込み |
| 2 | 1 | 花子 |返信テスト |
| 3 | 0 |かつお |日曜日の夜 |
| 4 | 0 |わかめ |パンチら |
| 5 | 2 |たらお |ままー |
| 6 | 0 |ますお |おとうさん |
| 7 | 2 |あじお |そんな人えん |
+------+-------+-------+-------------+
親記事も子記事(返信記事)も1つのテーブルに入ります。
IDはオートナンバー、resIDは、親記事には0が、子記事には親記事のIDが入ります。
ここまでは出来てるのですが、
表示をさせようとしたところで、止まってしまいました。
■親記事・・・・・・
◆子記事・・・・・
◆子記事・・・・・
■親記事・・・・・・
■親記事・・・・・・
という風にしたいのですが、普通にSELECT文では、ID順になってしまうわけで…。
どうしたら、↑の様に表示できるでしょうか。
ORDER BYも何か違うような気がするし…。
教えてくださいm(__)m
650 :
649:2005/07/07(木) 01:10:27 ID:???
>>649 Σ(゚д゚|||)ガーン
テーブル図がめちゃくちゃだ…
ごみん。
一つのSQLで済ませたいなら
select a.ID as threadID, b.ID, b.name, b.text
from table a
left join table b on a.ID = b.resID or a.ID = b.ID
where a.resID = 0
で
threadIDとIDが同じものを親記事として表示、
違うものを子記事として表示
かな。
親記事と子記事のテーブル作ればいいんジャマイカ?
ああ、ごめんよく読んでなかった
上は無しで
いや、ツリーじゃないでしょ。
多分、>653の通りでいいんじゃないかと
656 :
649:2005/07/07(木) 21:25:39 ID:gjggPGY2
ツリーじゃないです。
>>651 これは、同じテーブルをJOINすると言う事ですか?
真似てやってみたのですが…何か違う気が…。
----------------------------------------
SELECT a.ID as threadID, b.ID, b.name, b.text
FROM bbs a
LEFT JOIN bbs b on a.ID = b.resID or a.ID = b.ID
where a.resID = 0
----------------------------------------
テーブル名はbbsです。
>>655 >多分、>653の通りでいいんじゃないかと
と言うことは、テーブルを2個にすると言うこと?
出来れば、
>>649の構造でいきたいです。
ツリーじゃないならID5と7のresIDは1の子記事な2をつける形じゃなく、
親記事1をつける形にした方が・・・。
そしたら
>>651でいけるし。
2につけたという事実がほしいなら、resIDの他にスレッドIDが欲しい。
659 :
649:2005/07/08(金) 18:48:29 ID:9xlea3/2
すみません、大きな間違いを書いてました!
テーブルデータ、ID5と7のモノは、resIDは共に3の間違いです(>_<)
+------+-------+-------+---------+
|ID | resID | name | text |
+------+-------+-------+---------+
| 1 | 0 | 太郎 |テスト書込み |
| 2 | 1 | 花子 |返信テスト |
| 3 | 0 |かつお|日曜日の夜 |
| 4 | 0 |わかめ|パンチら |
| 5 | 2→3 |たらお|ままー |
| 6 | 0 |ますお|おとうさん |
| 7 | 2→3 |あじお|そんな人えん |
+------+-------+-------+---------+
本当ごめんなさい。
↑のテーブルレイアウトで、普通の掲示板を作りたかったのでした…。
という事は、
>>657さんの言うように
>>651の方法でやれば出来るのでしょうか?
んー、
>>656で書いた書き方以来進んでいないのです(´・ω・`)
じゃあ
>>651で
ORDER BY a.ID desc, b.ID
でどうよ。
661 :
649:2005/07/08(金) 21:40:39 ID:Cus4h7Yc
こうしてみますた。
----------------------------------------
SELECT a.ID as threadID, b.ID, b.name, b.text
FROM bbs a
LEFT JOIN bbs b on a.ID = b.resID or a.ID = b.ID
WHERE a.resID = 0
ORDER BY a.ID desc, b.ID
----------------------------------------
と、やっぱりエラーが出てきました。
Unknown column 'a.resID' in 'where clause'
んんんんーー(;´Д`)
リレーショナルデータベースでテーブルの結合は得意とするところなんだから親テーブルとレステーブルと分けたほうが簡単そうなんだけど
663 :
649:2005/07/09(土) 20:59:51 ID:???
出来たよ〜(´∀`)
ありがとう!!
SELECT a.ID as threadID, b.ID, b.name, b.text
FROM bbs AS a
LEFT JOIN bbs AS b on a.ID = b.resID or a.ID = b.ID
WHERE a.resID = 0
ORDER BY a.ID desc, b.ID
素朴な疑問。
>>663の方法で、返信されたらその書込みが一番上に表示したいときは
どうするのだろう?
lastReplyとかフィールド作れば?
返信付いたとき親記事のlastReplyをnow()で更新すりゃ、
a.lastReply desc, a.ID desc, b.ID
でソートするだけ。
666 :
nobodyさん:2005/09/01(木) 19:04:10 ID:elb5omGE
echo "おすすめSTEP BY STEPサイト";
IDっていうフィールド名はやめたほうがいいと思った。
668 :
nobodyさん:2006/09/24(日) 00:12:15 ID:YiCTYHDw
<p>文章<br />
669 :
名無しさん@お腹いっぱい。:2006/12/07(木) 15:08:10 ID:Ye6PTn9g
670 :
nobodyさん:2007/05/05(土) 18:54:22 ID:vIqetjnk
671 :
nobodyさん:2007/05/11(金) 12:39:40 ID:HfDkhq0l
nnJHMo name is Kostya.My nick is Zold . I want to find friends .ICQ 324600825
age
676 :
電脳プリオン:2011/11/26(土) 20:31:24.18 ID:??? BE:354732375-2BP(1960)
( ・∀・) | | ガガッ
と ) | |
Y /ノ .人
/ ) .人 < >_∧∩
_/し' < >_∧∩`Д´)/
(_フ彡 V`Д´)/ / ←
>>41 / ←
>>37
677 :
nobodyさん:2012/01/26(木) 23:52:58.26 ID:OHPN+lyf
678 :
nobodyさん:2012/01/28(土) 06:23:43.40 ID:KgzLrfiO
679 :
nobodyさん:2012/01/28(土) 07:18:20.69 ID:s6irS8Xc
かわいいお……
天使のような美しさだ
┣"┣"┣"┣"┣"
__
/ /┏))))
/ / ┃ ┃
`/ ( ┃お┃∧_∧
/ / \┃ ┃( *`ω´)
/ ┃く┃ ⌒)
/ ┃ ┃/ /
_ /((((┛/
__ / /~\ \
(__) \ \
⌒ヽ,;;し′ / /
人 '; / /
Y⌒)⌒ヽ \_)
┣"┣"┣"┣"┣"
__
/ /┏))))
/ / ┃ ┃
`/ ( ┃お┃∧_∧
/ / \┃ ┃`ω´)
/ ┃く┃ ⌒)
/ ┃ ┃/ /
_ /((((┛/
__ / /~\ \
(__) \ \
⌒ヽ,;;し′ / /
人 '; / /
Y⌒)⌒ヽ \_)
683 :
nobodyさん:2014/12/20(土) 20:22:50.39 ID:yiPkJ/Kc
ぬるぽ
そろそろスレッドフロート型掲示板が完成する
お前ら来てくれよな