BBS


記事一覧 全文検索

一括購読


No.559投稿日時:2002/05/27(月) 23:30  <親記事>
投稿者:水翁 <E-Mail> <URL>

HTMLで表

はろろ(^-^)/

おひさ〜。
HTMLでの質問いいですか?

では早速質問です。
翁のところでベンチ結果一覧載せてるんですが、データが増えて来るに従って追加が面倒になってきました(^^;)
それと、ブラウザから項目ごとのソートができるようにしたいのです。
データベースっぽくすれば簡単に追加、ソート、平均が出せるかなぁと思うのですが、
どうやってやるかご存じでしょうか?

たまには顔出せ〜(^-^)


No.560投稿日時:2002/05/28(火) 12:29  <↑親記事:No.559>
投稿者:K <E-Mail>

Re: HTMLで表

> 翁のところでベンチ結果一覧載せてるんですが、データが増えて来るに従って追加が面倒になってきました(^^;)

そうだろうねぇ(w。

> それと、ブラウザから項目ごとのソートができるようにしたいのです。
> データベースっぽくすれば簡単に追加、ソート、平均が出せるかなぁと思うのですが、
> どうやってやるかご存じでしょうか?

当然ながらHTMLだけで動的変化は無理、ということでCGI。
このサイトに使っているデータベースは優秀です。

http://cgiroom.nu/
http://cgiroom.nu/list/database/database2s/

クッキ喰わせてアクセス制限しているので、トップから入ってね。
データベースのソート版というやつです。
データ形式はCSVで、Excelで編集可能。

参考になるのは、私が知っている限りでは、私のサイトが1番(w。

http://www.karajan.tv/html/search.html

ここの117〜9行目でソートの設定をしています。
昇順・降順どちらも可。
ただ平均はどうだったかなぁ。
使う可能性がないので気にしなかったけど、たぶんいけるはず。

テンプレートは以下のよう感じ。

CSVデータ:

 ABCDEF
1ベあいうえお
2ベかきくけこ
3ベさしすせそ

テンプレート・ファイル:

<table cellspacing="0" cellpadding="0" border="0" summary="表">
<thead>
<tr><th>&nbsp;</th><th>母音あ</th><th>母音い</th>><th>母音う</th>><th>母音え</th><th>母音お</th>
</thead>

<tbody>
<!--ここから繰り返し-->

<tr><th>__2__行</th><td>__2__</td><td>__3__</td><td>__4__</td><td>__5__</td><td>__6__</td></tr>

<!--繰り返しここまで-->
</tbody>

</table>

で、CGIでは1列目を"ベ"で検索。

***.cgi?keys1=%83x

これで1列目に"ベ"を持つ行を全て拾って、表示。
毎回毎回検索をかけるわけですが、ようは全てが拾えるよう、全ての行に特定のマークをしておけばいいわけですな。

上の例だと、↓のような感じで出るはず。

   母音あ 母音い 母音う 母音え 母音お
あ行  あ   い   う   え   お
か行  か   き   く   け   こ
さ行  さ   し   す   せ   そ

一人にひとつ表が必要なら<table></table>まるごと繰り返し内に書き込み。
表の表示としての仕組みが複雑だろうが簡単だろうが、巧妙に組めば必ず実現できます。
参考までにうちのテンプレート初公開!(w

http://www.karajan.tv/htm/recordings.htm

このファイルはCGIに読み込まれて表示された状態で初めて完璧になるので、空のまま表示するとデロデロです。
なかを見ればわかるとおり、「もし何列目にデータがあったら、何々を表示する」という設定ができるので、テンプレートを入れ子で書くのがちょっと面倒にしても、なかなか使えるはず、っていうかベンチなら表示されない項目ってないから、これはあまり関係ないかな。

肝心の検索速度は、このサイトで体感してくれい。
いま純データ(CSV)は600kb弱、200kbくらいまでなら、ほぼ瞬時でした。

> たまには顔出せ〜(^-^)

出してるよ。
先週の土曜だったか、翁のサイトでデータベースの話題を見て、「会社からNetscape7でゴーゴー」とか言いながら、書き込もうと思ったんだけど、 さすがに不特定に会社名が見えるのはまずいので、串探してたら、そのあと作業が立て込んで、気がついたら打ち込んだ文章が消えてた(w。
休みの日は熟睡してます。


No.561投稿日時:2002/05/29(水) 01:05  <↑親記事:No.560>
投稿者:水翁 <E-Mail> <URL>

さんきゅ〜

はろろ(^-^)/

内容をコピーしたので時間見てじっくり読むぞ〜。
ありがとね〜(^-^)


No.566投稿日時:2002/06/03(月) 18:08  <↑親記事:No.560>
投稿者:水翁 <E-Mail> <URL>

> ここの117〜9行目でソートの設...

> ここの117〜9行目でソートの設定をしています。
> 昇順・降順どちらも可。

ソートができな〜い。
提示のソースを見てみると、
<input type="radio" name="sort" value="up32" id="A1" tabindex="6" checked="checked" /><label for="A1">年代順(昇順)</label>
<input type="radio" name="sort" value="down32" id="A2" tabindex="7" /><label for="A2">年代順(降順)</label>
<input type="radio" name="sort" value="" id="A3" tabindex="8" /><label for="A3">カテゴリ順</label>
ってなってるんだけど、
nameはなんでもいいの?sortじゃないといけない?
valueは何を指してる?
idは何を指してる?
tabindexは?
labelは?

sample.htmにそのまま挿入してみたが、な〜んも起こらんかった・・・。

> ただ平均はどうだったかなぁ。
> 使う可能性がないので気にしなかったけど、たぶんいけるはず。

説明書読んでる限りではできるとは書いてないねぇ。

> で、CGIでは1列目を"ベ"で検索。
>
> ***.cgi?keys1=%83x
>
> これで1列目に"ベ"を持つ行を全て拾って、表示。
> 毎回毎回検索をかけるわけですが、ようは全てが拾えるよう、全ての行に特定のマークをしておけばいいわけですな。

翁の所では毎回全データを表示させるので、検索させても全データ表示されないと困るから、検索条件はなしなのじゃ(^-^)

> 一人にひとつ表が必要なら<table></table>まるごと繰り返し内に書き込み。
> 表の表示としての仕組みが複雑だろうが簡単だろうが、巧妙に組めば必ず実現できます。

いや〜、結果の表示は今と同じでいいので表は一枚っす。

> 参考までにうちのテンプレート初公開!(w
>
> http://www.karajan.tv/htm/recordings.htm

あ、見てないや・・・(^^;)
あとで見よ〜っと。

> このファイルはCGIに読み込まれて表示された状態で初めて完璧になるので、空のまま表示するとデロデロです。
> なかを見ればわかるとおり、「もし何列目にデータがあったら、何々を表示する」という設定ができるので、テンプレートを入れ子で書くのがちょっと面倒にしても、なかなか使えるはず、っていうかベンチなら表示されない項目ってないから、これはあまり関係ないかな。

うむうむ、翁の所では関係ないっす(^-^)
全データ表示で並べ替えしたいだけなので。

> 出してるよ。
> 先週の土曜だったか、翁のサイトでデータベースの話題を見て、「会社からNetscape7でゴーゴー」とか言いながら、書き込もうと思ったんだけど、 さすがに不特定に会社名が見えるのはまずいので、串探してたら、そのあと作業が立て込んで、気がついたら打ち込んだ文章が消えてた(w。
> 休みの日は熟睡してます。

むむぅ。


No.569投稿日時:2002/06/03(月) 22:19  <↑親記事:No.566>
投稿者:K <E-Mail>

ソート

> nameはなんでもいいの?sortじゃないといけない?

name属性の値はsortじゃないと駄目。

> valueは何を指してる?

upが昇順、downが降順。
私のソースでup/downのあとに32とあるのは、データの32列目を降順・昇順の対象にしているということ。

> idは何を指してる?
> tabindexは?
> labelは?

この3つはHTMLの問題なので、つけなくてかまいません。

> sample.htmにそのまま挿入してみたが、な〜んも起こらんかった・・・。

それはサンプル・データの32列目に何も入っていないからでしょう。

たとえばメモリの書き込み速度順で表示させるとして、そのデータがcsvの5列目にある場合。

<input type="radio" name="sort" value="up5">メモリ速い順(書き込み)
<input type="radio" name="sort" value="down5">メモリ遅い順(書き込み)

これでいけます(ラジオ・ボタン型)。

> 翁の所では毎回全データを表示させるので、検索させても全データ表示されないと困るから、検索条件はなしなのじゃ(^-^)

思い出した。
検索単語なしでアクセスすると、データをそのまままるごと表示するんだった。


No.570投稿日時:2002/06/03(月) 22:26  <↑親記事:No.569>
投稿者:水翁 <E-Mail> <URL>

原因はそれかーっ

> > sample.htmにそのまま挿入してみたが、な〜んも起こらんかった・・・。
>
> それはサンプル・データの32列目に何も入っていないからでしょう。

もちろん数字は変えましたよ〜ん。
原因は、

> 思い出した。
> 検索単語なしでアクセスすると、データをそのまままるごと表示するんだった。

これですな(--;)
項目を一つ追加するかのぉ・・・。


No.575投稿日時:2002/06/03(月) 23:32  <↑親記事:No.570>
投稿者:水翁 <E-Mail> <URL>

やっぱり駄目ー

う〜む、ソートされません。

csvの中身は、
9 K 16759 22679 22593 9163 10799 14539 28 14760 1734 3537 60 30787 24632 13497 hd
一行にこんな感じで複数行記述してあります。
呼び出しとして、
database.cgi?key=hd&sort=down3
などと記述してます。
この場合はALL値でのソート。
しかし表示されるのはcsvの記述順・・・。
いったいどうしろと・・・。


No.576投稿日時:2002/06/03(月) 23:37  <↑親記事:No.575>
投稿者:K <E-Mail>

Re: やっぱり駄目ー

> csvの中身は、
> 9 K 16759 22679 22593 9163 10799 14539 28 14760 1734 3537 60 30787 24632 13497 hd
> 一行にこんな感じで複数行記述してあります。
> 呼び出しとして、
> database.cgi?key=hd&sort=down3
> などと記述してます。

呼び出しに使っている「hd」というのが17列目だから、

databese.cgi?keys17=hd&sort=down3

でいけるはず。


No.577投稿日時:2002/06/04(火) 00:25  <↑親記事:No.576>
投稿者:水翁 <E-Mail> <URL>

> 呼び出しに使っている「hd」と...

> 呼び出しに使っている「hd」というのが17列目だから、
>
> databese.cgi?keys17=hd&sort=down3
>
> でいけるはず。

それでも駄目なのよ〜。
降参〜。


No.578投稿日時:2002/06/04(火) 00:34  <↑親記事:No.577>
投稿者:K <E-Mail>

Re: それでも駄目なのよ〜。

> それでも駄目なのよ〜。
> 降参〜。

なぬ?
うちちゃんと動いてるぞ。

http://www.karajan.tv/cgi/search.cgi?sort=up32
http://www.karajan.tv/cgi/search.cgi?sort=down32

録音年順ね。

ひょっとしてCSVの間違いじゃない?
タブ区切り?
cgi側でタブ区切りのスィッチONにした?
データを丸ごと1列に入れてない?(w


No.579投稿日時:2002/06/04(火) 07:34  <↑親記事:No.578>
投稿者:水翁 <E-Mail> <URL>

およ

> なぬ?
> うちちゃんと動いてるぞ。

およよ。

> http://www.karajan.tv/cgi/search.cgi?sort=up32
> http://www.karajan.tv/cgi/search.cgi?sort=down32
>
> 録音年順ね。

ふ〜む。

> ひょっとしてCSVの間違いじゃない?
> タブ区切り?

そそ。

> cgi側でタブ区切りのスィッチONにした?

うん。

> データを丸ごと1列に入れてない?(w

それはないない。
現在の結果一覧をそのままコピー取ったから。
windows上で試してるから駄目なのかな?
csvファイルの文字コードの問題かな??


No.580投稿日時:2002/06/04(火) 10:42  <↑親記事:No.579>
投稿者:K <E-Mail>

Re: およ

> それはないない。

CSVをテキスト・エディタで見たとき、ちゃんと途中にタブ入ってる?

> csvファイルの文字コードの問題かな??

Shift_JISでないと動かないよ。
ってかベンチに全角ってある?


No.581投稿日時:2002/06/04(火) 14:14  <↑親記事:No.580>
投稿者:水翁 <E-Mail> <URL>

ふ〜む、あとは実際の環境でやってみますかね

> CSVをテキスト・エディタで見たとき、ちゃんと途中にタブ入ってる?

入ってるよ〜。
自分で入れたからねぇ。

> > csvファイルの文字コードの問題かな??
>
> Shift_JISでないと動かないよ。

なるほど、じゃあ大丈夫だな。

> ってかベンチに全角ってある?

あるよ〜。
上の例を見てもらえれば分かるけど、「K」とか(笑)


No.582投稿日時:2002/06/04(火) 14:29  <↑親記事:No.581>
投稿者:水翁 <E-Mail> <URL>

別の環境で試したら動いた

なんてこったいハニー。

環境変えたら動いたよ〜ん。
お手数おかけしました。


No.583投稿日時:2002/06/05(水) 00:24  <↑親記事:No.582>
投稿者:水翁 <E-Mail> <URL>

次の質問いいか〜い?

続けてもいいのかな?
それとも翁の方にするかい?


No.584投稿日時:2002/06/05(水) 02:56  <↑親記事:No.583>
投稿者:K <E-Mail>

いいよ〜

> 続けてもいいのかな?

いいよ〜。
私に答えられれば。

> それとも翁の方にするかい?

こっちが良いな、メールで知らせが来るから。
しかしこのBBS、これ以上は潜れないぞ。
別ツリーにして。



記事一覧 全文検索

Script : Sylpheed 1.23