【PHP】ツリー掲示板を作ろう
■ このスレッドは過去ログ倉庫に格納されています
>>321
あ"〜 気が付くと すっかり眠りこけてしまいました
お蔭様でtree.phpの方は ファイルごと入れなおしたら動くようになりました
ど〜もありがとうございました お邪魔いたしました では バイチュ〜
___________________________________________________________[ END OF THREAD ]___ あのな、職場のサーバ(Linux)に共用住所管理ページみたいなのを作っているんだけど、その検索機能で「谷村」という苗字を検索すると、見つからないんだ。
でも、実際に存在してる。
他の苗字ではそんなことはないんだけど、何でですか?
ちなみに、クライアントは全てwindowsマシン、サーバの文字コードはEUC いや、、、検索はどうやってるんだ
このスレで問題ないのか? >>333
、ヲ、チ、ヌ、マ。「スサス?マソ、ヌ。。コ貊ヤ。。、。コケ、?、ネコ貊ヤ、マ・メ・テ・ネ、ケ、?、ャ。「
チエ、ッエリキク、ハ、、。。ソワコ莉ヤ。。、゙、ヌク。コオ、?、?、陦」
、゙、。ウイ、マフオ、、・キ・ケ・ニ・爨タ、ォ、鬢、、、、ア、ノ。」
MySQLmax+PHP4.3.3 (EUC)
文字バケスマソ
ウチでは住所録で 堺市 を検索すると
関係ない 須坂市 がヒットする。
害はない程度のシステムだから放置してるけど。
MySQLmax+PHP4.3.3 (EUC) どっかに、スレッド掲示板のアルゴ書いてあるようなページないですか?
検索しても関係ないのが引っかかりすぎて・・・ ツリーのアルゴリズムはシンプルだよ。
一件に親IDと自IDを記録しといて、投稿された順に親へぶらさげればいいだけ。
便宜上、大親IDを記録していることもある。 はい、そういう風には実装してるんですけど、一覧取得の方法が見つからないのです。
子IDを検索して、孫IDを検索してってやると、何回もSQLを投げなくちゃいけなくなるんです。
どうしたらいいんでしょう・・・ >>339
なので便宜上、カテゴリ分け的な大親IDを記録していることもある。
SQL一発で出したかったら並び専用のIDを持たせて、投稿されるたびにちまちま入れ込む。
掲示板なんて投稿数よりも閲覧数のほうが多いんだから、表示のときに高負荷をかけるようなデータ構造は避けるべき。 大親IDだけでいいんじゃねぇの?
って思ったけどそうかツリーには分岐があるのねー PHP使ってる時点で初心者だな(w
検索は静的書き出ししたHTMLを全文検索できるようにしたほうがいい。PHPでやるのはセンス無し。 >344
静的書き出ししたファイルが10000ファイルくらいあった場合それを全部検索かけるの?
あふぉですか? 過疎スレに宣伝
(SS)C-BOARDをPHPに移植しました。
ttp://www.project-s.org/ >>351
PHPに移殖するならDB化もやって欲しいなという希望で聞きました
ツリー式ならDBの方が楽そうですし どうも。ソース見ればわかりますがDBは使ってません。
というか単純にPerlの処理をPHPになおしただけです。 覚えたてのphp使って試しに作ってみた
あら探しよろしく
ttp://www20.cds.ne.jp/~yugen/itah3/v_main.php?dir=main
>>355
これは携帯向け?
インターフェイスについてはなんとも言えないけど
スレッドについてるレス数くらいは表示した方がいいと思う。
あとHTMLの文法にもうちょっと気を遣って欲しいかも。 携帯対応化もある程度意識してはいるけど、今は単にデザインを度外視して
機能から実装していってるのでシンプルに見えるだけでつ。
この段階でデザインに凝ると後でカスタマイズとかしにくくなるし。
>レス数
御意、やっとく
>HTMLの文法
何か問題あるん?
>>357
あ、まだまだこれからってことね。
トピック表示メインかと思ったから、
ツリーにするならなくてもいいかも。
HTMLは、俺もいわゆるW3C信者なもんで気になるんだよね。
strictとは言わないまでもせめてtransitionalに準拠したHTMLを吐き出して欲しいところ。
そのあたりはlintを通してみるといろいろ警告が出ると思う。
>>349
初めまして.元作者です.
もうほとんどの機能が動いてるみたいですね.すばらしいです.
オリジナルは,Perl およびプログラミングの学習を主眼メインにして作成した
ので(c-board は僕が最初に作成したプログラムです),いろいろと野暮ったい
ところや不必要な機能がいろいろとついていると思います.是非,そういった
ものをそぎ落として,もっといいものを作成して下さい.
陰ながら応援しています.
ではでは. 御要望のレス数表示が(やっと)入ったので一応報告
…が、ソース公開までの道のりはまだ長い
ttp://www20.cds.ne.jp/~yugen/itah3/v_main.php?dir=main >>360
ありがとうございます。
C-BOARDは学生のころに出会ってから今までありがたく使わせていただいています。
高機能な上に現在でもスカリーソフトさんのところで開発が続いているので、
移植作業も追いつかなくて大変です。
最近なかなか作業の時間がとれないのですが、ゆっくりとやっていくつもりです。 時代を超えて良スレになりつつあったのにまたトマトる。 はじめまして。
phpとpostgresqlでツリー掲示板のモトを作ってみようと思います。
ソースを公開してみなさんに添削していただいたり、機能について
いろいろ助言がいただければと思います。
よろしくお願いします。 まず、スレッド作ってメッセージ書いて、見る。
だけのもの作りました。
http://qbbs.s231.xrea.com/
メッセージはツリーにする予定です。
ちょっと見るだけでも見てください。 テーブル定義だけど、primary keyはつけたほうがいいよ。
ちょっと見た感じ、serial primary keyでいいと思う。
あと気になったのが'='使うときはスペース空けたほうが見やすい。
$var = 'value'; って感じで。
あと「テンポラリ」とか「代替」とか気になった。
さらっとしか見てないけど、スレッド立てる時になんか1行入れてるのかな。
スレッド式掲示板作る上で、特に必要ないと思うけど。 >>368
ありがとうございます。
>serial primary key
さっそく直します。
>あと「テンポラリ」とか「代替」とか
スレッドの代替メッセージレコードについては、
「あるメッセージに注目して、それを親とするメッセージの一覧」
を、ツリーのどこからでも同じ手順で行えるように入れてあります。
タイトルとか本文とか、必要な情報をメッセージレコードに入れて、
スレッドの設定だけスレッドレコードに入れてしまう方がいいかな
とも思ってます。
これはスレッドの設定項目がいくつか出てきたら実験しようと思うです。
「テンポラリ」は、スレッドやメッセージを入力するときに先に作成
しているレコードですか?
これは、入力→確認のあと戻って修正、の機能をつけた時に、先にレコード
を作っておいたほうがよさそうだったので入れてあります。
>'='使うときはスペース空けたほうが見やすい
今、SQLとかタグとかを直にかいている部分を分離しています。
この書き換えと一緒にやっておこうと思います。
テーブル定義はついでにnot null制約くらいはつけようね。
これって、メッセージが親になりうるってことかな?
各メッセージがメッセージを持つことができる?
データ構造的にそれほど大変なことではないけど、表示が難しくなりそう。
「テンポラリ」はそういう使い方をするわけですね。
それってもし「入力→確認→ブラウザ閉じる」ってやったら、無駄にテンポラリのまま残らない?
セッション使うほうがいいと思うよ。 表示まわりをちょっといじってみました。
>>370
ありがとうございます。
not nullつけて、defaultの設定もしました。
たいしたメッセージもないので、テーブルは作り直しちゃいました。
そのうちデータのバックアップとか出来るようにしたいです。
>メッセージが親になりうるってことかな?
はい、いちおうスレがツリー掲示板を作ろう、なので、そういう風にしてあります。
ただ、レスにレスを繰り返してインデントがどんどん増えるのは好きではないので、
その辺どうしようかちょっと悩んでます。
>無駄にテンポラリのまま残らない?
はい、ぜんぶテンポラリの状態で残ります。
これはpublish=0で判定できるので、デイリーかなにかで古いテンポラリを消すとか
しようかなと思っています。
>セッション使うほうがいいと思うよ。
う〜ん、ピンとこないですごめんなさい。
ヒントもらえませんか? そんな複雑な掲示板必要なのかな?
使う人も、若干使いにくいような気がするんだけど。
こういう構造になるってことだよね?
スレッド1
→レス1
→レス2
→レス2に対してのレス3
→レス2に対してのレス4
→レス4に対してのレス5
→レス2に対してのレス6
→レス7
→レス8
→レス8に対してのレス9
→レス9に対してのレス10
→レス10に対してのレス11
→レス10に対してのレス12
→レス12に対してのレス13
→レス9に対してのレス14
→レス8に対してのレス15
→レス8に対してのレス16
→レス9
→レス10
スレッド2
・
・
・ そです。
ツリー表示はやっぱり必要かなと思いますが、インデントが深くなるタイプには
したくない気がします。
メッセージの下にぶら下がってるレス全部の数くらいは表示したいです。 インデントっていうのは見た目(表示)の問題でしょ。
ツリー式掲示板ってさ
スレッド1
→レス1
→レス2
→レス3
・
・
・
スレッド2
→レス11
→レス12
→レス13
・
・
・
っていうのを一般的に言うよ。 >>374
くそ作者どものお陰で定義は滅茶苦茶
最近大御所が時間軸をツリー表示と言い出した
これ以上「ツリー型」の定義が広まれば収集つかんぞ
>>374をツリーだと言うのは、文脈によっては許せるかな。
1世代しか子供を許さないツリーは、はたしてツリーなのか?
ってのはあるが。
けど、>>372がツリーじゃないっていうのは、どうなんだろう。
使う側からみれば普通にツリー構造だと思うが。
>>376
>大御所が時間軸をツリー表示と言い出した
どこの話よ? >>374
恥かしい人発見 コメントリンクって知ってるか?
>っていうのを一般的に言うよ。
ttp://e-words.jp/?w=%88%EA%94%CA%93I tree BBSつくるならCMTにも対応してほしい 誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
T19LH57R7C ☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆ ■ このスレッドは過去ログ倉庫に格納されています