現在ジャンル大ID、ジャンル中ID、ジャンル小IDに分けて情報をデータベースに格納しています。それをユーザーに選んでもらうようにするのですが、(ちょうどOKwebのカテゴリー分けのように)OKウェイブのようにコンボボックスを3つにしてそこから大分類、中分類、小分類というようなぐわい選ぶ方式はどのようにして作ればいいのでしょうか。なるべく一番複雑な部分なので簡略にプログラムも作りたいと思っています。どうかサンプル的なソースなどを教えて頂けないでしょうか?(汗)
どうかお願いします。(汗)

このQ&Aに関連する最新のQ&A

Java 種類」に関するQ&A: 3種類の連想配列(java)

A 回答 (1件)

大中小分類を行う為には私の考えつく方法は2種類あります。


まず、このページで行っている方法はJAVAを使用していると思います。
この方法ではJAVAに対応しているブラウザでしか使用できません......

もう一つの方法は見た目は不細工かも知れませんがCGIでおこなう方法です。
CGIは表示中の画面でリアルタイムな操作は出来ません。
(要求した命令をサーバーが演算し画面を表示させるだけですので.....)
しかし、逆に言えば要求された内容に対しての回答は出来ると言うことです。

例として
大分類




中分類1



中分類2



.....
小分類あ



.....


大分類1が選択された場合は次の画面で中分類1の内容を表示させれば良い訳です。

質問の内容をデータファイルで作成してうまく作成すればかなりレパートリーは増えていきます。

頑張ってみて下さい。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Q検索可、複数のジャンルに登録出来るリンクのフリーCGIありませんか。

リンク内を検索出来て、複数のジャンルに登録出来るリンクのフリーCGIありませんか。
例えば、イラストサイト・中学生運営の場合、『イラスト』分野だけでなく『中学生』分野も一緒に登録。という感じです。
現在配布しているものに限ります。

よろしくお願いします。

Aベストアンサー

MyTools.Net(参考URL)> My CGI-BIN Tools > T-Bookmark 1
ユーザ登録式のジャンル別リンク集です。
使ったことはありませんが、いくつかのサイトのリンク集でこのCGIが使われているのを見ました。
複数のキーワードを登録できて、AND/OR検索もできるので、とても便利そうです。

参考URL:http://www.mytools.net/

Q処理の切り分けについて

現在、フォームから情報を処理するCGIをperlで書いています。
フォームの入力、確認、結果の表示を一様のながれで処理するプログラムはかけました。
この、入力画面にて、押したボタンによって、入力された情報は同じで、処理先のみを分けることはできま線でしょうか?
具体的には、確認画面へ飛ぶボタンと、その入力を処理にかけるページに飛ぶボタンの2つをひとつのフォームに共存させたいのです。
どうかよろしくお願いします。

Aベストアンサー

今ひとつ状況がわからないので、誤解があるかもしれませんが、

もし、確認画面というのがCGIプログラムではないとか、そうであるとしてもURIが異なる場合は、
TYPE="submit"
を使わずに
TYPE="button"
で(別にイメージとかでもいいですけど)ボタンを2つ作り、JavaScriptのonClickイベントを拾ってFormのAction先を変更してからform.submit()してはいかがですか?

もし、確認と、処理と、同一のCGIプログラムで行うんでしたら、押下されたType="submit"のボタンだけが満足な要素として送られるはずですので、それぞれのボタンのnameとvalueの組み合わせをCGIプログラム側で拾って条件分岐してあげればいいとおもいます。

Qnickyのカテゴリ分け機能

先日nickyを設置し、うまく動作したのでブログ風スキンをダウンロードしました。
設置マニュアルを見ると、list.cgi(カテゴリ対応版)、minili.cgi、panel.cgiを先に設置するように(公式BBSを見るといいよ)とありました。しかしnickyの公式BBSはリンク切れでした。
アーカイブで探し出し、
http://web.archive.org/web/20060116175403/painter.homeip.net/~raelian/nicky.cgi?DT=20040830B
からダウンロードし、list.cgi(カテゴリ対応版)、minili.cgiはうまく動作したのですが、panel.cgiだけが動きません。
ダウンロードするリンク先がlist.cgi、minili.cgiはテキストモードでソースが表示されるのに対して、panel.cgiはHTMLドキュメントになっていました。これが原因だと思うのですが、どうなんでしょう?
他のアーカイブも探したのですが、最終的に↑ページに辿り着いてしまってお手上げ状態です。
どなたか動作するpanel.cgiが置いてある場所を教えて下さい。
よろしくお願い致します。

先日nickyを設置し、うまく動作したのでブログ風スキンをダウンロードしました。
設置マニュアルを見ると、list.cgi(カテゴリ対応版)、minili.cgi、panel.cgiを先に設置するように(公式BBSを見るといいよ)とありました。しかしnickyの公式BBSはリンク切れでした。
アーカイブで探し出し、
http://web.archive.org/web/20060116175403/painter.homeip.net/~raelian/nicky.cgi?DT=20040830B
からダウンロードし、list.cgi(カテゴリ対応版)、minili.cgiはうまく動作したのですが、panel.cgiだけが動きませ...続きを読む

Aベストアンサー

カテゴリ編集ボタンのところまでたどり着けたんですね。
お疲れ様です。
panel.cgiはWebarchiveから持って来ようとすると余計なコードが紛れ込んでくるようです。
手元の動作するpanel.cgiと比較すると、
23行目の
  <BASE HREF="http://painter.homeip.net/~raelian/tag/panel.cg_">
と、最後のほうの
509行目から
  <SCRIPT language="Javascript">
中略
569行目
  </html>\n";
までを削除して、
508行目の
  print "</body>

  print "</body></html>\n";
に置き換えると正しい内容と同一になるようです。

Q太郎を太と郎に分ける方法。

こんにちわ。
名前の占いをしたくて、文字を1文字1文字分解したいと思っています。(姓名判断?!)
それで、
$name="$in{'message'}";#太郎など

$n01=substr($name,0,2);#太
$n02=substr($name,1,1);#郎

#格納されている文字列を表示

print "$name";
print "<br>";

print "$n01";
print "<br>";
print "$n02";

としたのですが、実行結果は
太郎


となりました。
まあ、文字を使うのに、
$n01=substr($name,0,2);#太
$n02=substr($name,1,1);#郎
というのはおかしいのでしょうか?
というわけで、文字を分割したいのですが、何か手段はありますでしょうか?
ちなみにフォームから送られてくる情報は太郎といった状態で、間に/等の文字列は入っていません。
よろしくお願いします。

Aベストアンサー

>>$n01=substr($name,0,2);#太
>>$n02=substr($name,1,1);#郎

substr関数の仕様を読んでみよう。

確か、「バイト数」じゃね?

QPerlでIDチェック

ID、パスワードチェック用CGIを作成しました。
正しいID、パスワードを入力すると任意のフォルダへ移動できると言うものです。
ID、パスワードはCGI内で変更することが出来ます。
そのIDに「_」(アンダーバー)を使ったのですが、うまく合致させることが出来ず必ずIDが違いますと出てしまいます。
どうすれば正しく認識してくれるでしょうか?
よろしくお願いします。

Aベストアンサー

私はperlは素人ですが、
「_」が含まれる場合は

if($in{in_idno} =~ /[^a-zA-Z0-9+]/){
$ngcnt++;
$ngdata .= " ID";
}

このif文の条件が満たされるので、エラーになるように思います。


このカテゴリの人気Q&Aランキング

おすすめ情報