CGI サポートフォーラム

新規投稿ツリー表示一括表示リスト表示検索

質問をする前に、過去ログに同じ質問がないか検索してください。

この記事No.462 を本当に削除しますか?
(この記事以下の全てのツリーを含む)

削除をするには管理パスワードが必要です。
管理パスワード:

Re:フレーム形式について
投稿者:masaya さん  ( uid 21158, posts:36, since 2004/01/06 )
投稿日: 2004/02/28 (土) 02:54 No.462 | 編集 | 削除

記事No.460 へのコメントです。

>こんにちは、以前こちらで質問させていただきましたが、その節は親切にサポートいただきまして本当にありがとうございました。
>管理の手軽さ、また階層式の便利さに惚れ込み、リンク以外にも色々使ってみようと只今少しずつ手を加えておりますが、その中でいくつか質問させていただきます。

いえいえ、ご丁寧なご挨拶ありがとうございます。
喜んでもらえるとサポートのしがいも湧くので、励みになります。(^^


>フレーム形式が左右になっていますが、こちらを上下に変えることは可能でしょうか。exit.cgiのrowsをcolsに変更後、表示関係(40行目)以下の改行を一部削除したのですが、どうしても表示が
>
>カテゴリA
> サブカテゴリA1
> サブカテゴリA2 カテゴリB
>           サブカテゴリB1
>           サブカテゴリB2...
>となってしまいます。
>
>できればデフォルトでカテゴリを開いた状態にし
>
>カテゴリA     カテゴリB     カテゴリC
> サブカテゴリA1  サブカテゴリB1  サブカテゴリC1
> サブカテゴリA2  サブカテゴリB2  サブカテゴリC2...
>―――――――――――――――――――――――――――フレームで分割
>  データ等表示部分
>
>という表示にしたいのですが、こちらは大幅な改造無しに可能でしょうか?
>お手隙の際にでも回答いただければ幸いです。よろしくお願いします。

カテゴリを横に並べるには、テーブルを使うのが楽だと思います。
本当は、JavaScript でやるのがきれいなんでしょうけど、ブラウザ依存が激しいので、JavaScriptは嫌いだったりします。
# メジャーじゃないブラウザを使っているので、悲しい思いをたまにしていますので・・・。

サンプルで作ってみた menu のルーチンを付けておくので試してみてください。

ただ、横並びだと、カテゴリの数が増えたときに、画面からはみ出させるか、カテゴリ名の表示幅を縮めるかする必要があるので、そこをどうするか考えどころですね。


sub menu {

&head;

my ($tmp_catid, $tmp_subid, $catdata, $subdata);
my (%tmp_list, %tmp_sublist) = ();
my ($cat_max) = &LoadCategory;
my ($cols) = $cat_max + 1;
$html .= <<_HTML_;
<table width="100%">
<tr>
<td colspan="$cols" <img src=\"$imgdir/$menu_image\"></td>\n
</tr>
<tr valign="top">
_HTML_

@tmp_cat = split (/\:/, $in->{'catid'});
$tmp=0;

foreach $tmp_catid (keys %category) {
$catdata = &GetCategory ($tmp_catid);
$tmp_list{$catdata->{'group'}."_".$catdata->{'catname'}."_".$catid} = $tmp_catid;
}

foreach (sort keys %tmp_list) {
$catdata = &GetCategory ($tmp_list{$_});
$tmp_count=0;
foreach $tmp (@tmp_cat) {
if ($tmp eq $catdata->{'catid'}) {
$temp = $in->{'catid'};
$temp =~ s/:$tmp:/:/g;
$temp =~ s/^$tmp://;
$temp =~ s/:$tmp$//;
$html .= "<td><a href=\"$script?mode=menu&catid=$temp&\" target=\"menu\" class=\"menu\"><img src=\"$imgdir/$dot_open\
" border=0> $catdata->{'catname'}</a>\n";
$tmp_count++;
my ($scat_max) = &LoadSubCategory;
foreach $tmp_subid (keys %subcategory) {
$subdata = &GetSubCategory ($tmp_subid);
$tmp_sublist{$subdata->{'group'}."_".$subdata->{'subname'}."_".$tmp_subid} = $tmp_subid;
}
foreach (sort keys %tmp_sublist) {
$subdata = &GetSubCategory ($tmp_sublist{$_});
if ($subdata->{'catid'} eq $tmp) {
$html .= "<br><a href=\"$script?mode=vew&subid=$subdata->{'subid'}\" target=\"vew\" class=\"menusub\"><img sr
c=\"$imgdir/$dot_image\" border=0> $subdata->{'subname'}</a>\n";
}
}
$html .= "</td>\n";
}
}
if ($tmp_count == 0) {
$temp = $in->{'catid'};
$temp .= ":$catdata->{'catid'}";
$html .= "<td><a href=\"$script?mode=menu&catid=$temp\" target=\"menu\" class=\"menu\"><img src=\"$imgdir/$dot_close\" bo
rder=0> $catdata->{'catname'}</a></td>\n";
}
}

$html .= <<_HTML_;
<td>
<div><img src="$imgdir/line2.$ext" width=150 height=5></div>
<a href=$script?mode=text target="vew" class="menu"><img src=\"$imgdir/$dot_image\" border=0> テキスト表示</a><br>
<div><img src="$imgdir/line2.$ext" width=150 height=5></div>
<a href=$script?mode=list target="vew" class="menu"><img src=\"$imgdir/$dot_image\" border=0> リスト表示</a><br>
<div><img src="$imgdir/line2.$ext" width=150 height=5></div>
<a href=$script?mode=vew&cmd=newlist target="vew" class="menu"><img src=\"$imgdir/$dot_image\" border=0> NEWLIST</a><br>
<div><img src="$imgdir/line2.$ext" width=150 height=5></div>
<a href=$info target="vew" class="menu"><img src=\"$imgdir/$dot_image\" border=0> INFO</a><br>
<div><img src="$imgdir/line2.$ext" width=150 height=5></div>
<br>
<div><img src="$imgdir/line2.$ext" width=150 height=5></div>
<a href=$admscript class="menu" target="vew"><img src=\"$imgdir/$dot_image\" border=0> 管理用</a><br>
<div><img src="$imgdir/line2.$ext" width=150 height=5></div>
<a href=$home target="_top" class="menu"><img src=\"$imgdir/$dot_image\" border=0> HOME</a><br>
<div><img src="$imgdir/line2.$ext" width=150 height=5></div>
<form action="$script" method="post" target="vew">
<input type="hidden" name="mode" value="vew">
<input type="hidden" name="cmd" value="search">
<input type="text" name="word" value="" style="width:150px;"><br>
<div align="center"><input type="image" src="$imgdir/search.$ext" border=0 width=80 height=21 alt="search!"></div>
<br>
</form>
</td>
</tr>
</table>
</body></html>

_HTML_
}

[ この記事にコメントを返信する ] [ 原文引用 ]

- TOP -

管理者:webmaster
NICOLE's - WWWForum 3.7c  Modified by masaya
Catch: Mon May 20 00:03:55 2024
[jcode.pl:679:warn] defined(%hash) is deprecated at lib/jcode.pl line 679.
[jcode.pl:679:warn] (Maybe you should just omit the defined()?)
[jcode.pl:688:warn] defined(%hash) is deprecated at lib/jcode.pl line 688.
[jcode.pl:688:warn] (Maybe you should just omit the defined()?)

/wwwforum/wwwforum.cgi?id=11&az=delete&number=462 with Perl 5.016003 for freebsd