CGI-BBS > 電子掲示板 > 簡易BBS > 簡易BBSについてアイコン一覧を表示することができない。


カレッヂ
カレッヂ


質問者 ほっとみるく  投稿日 2003/12/24(水) 00:18:44
こちらよりダウンロードした「簡易BBSΘ 」を設置したいと思っています。
現在、概ねの試験は通過しているのですが、唯一設定したアイコン一覧を表示させる
ことが出来ません。 プロバイダーは@Niftyを使っており、次のような構成で
組んであります。 (README.TXT の3に相当する組み方です)

|-- cgi-bin/
    |   
    |-- BBS/
   |    |
    |    |-- bbs.cgi <755>
    |    |-- icon.cgi <755>
    |    |-- jcode.pl <644>
    |    |-- cgi-lib217.pl <644>
    |    |-- resp.cgi <644>
    |    |
    |    |-- data/ <777>
    |
    |-- homepage
    |    |
    |    |-- bbs/ <755>
    |           |
    |           |-- index.html <666>
    |           |
    |           |-- images/ <777>
    |           |-- icon/ <755>
                      |
                      |-- 1.GIF~10.GIF


現在までに、Form=1で初期投稿を完了して書き込み準備は完了しています。
その投稿画面には正しく選択したアイコンが表示されるのですが、投稿メニューの
<アイコン一覧>をクリックすると、CGIのディレクトリーを参照してしまいます。
勿論、icon.CGIの仮想URLは、フルパスでURLを設定しているのですが、何度
試してもCGIディレクトリーを表示する為、アイコン一覧が全て赤い×印となって
表示されないのです。
現在の問題はここだけで、これをクリアすれば本稼働になるのですが・・・。

icon.CGIの設定は次のようにしています。 BBS.CGIのアイコン設置場所も同じです。

$icon_dir = "../../homepage/bbs/icon/";

実際には<アイコン一覧を>クリックすると、http://cgi-bin/homepage/bbs/icon/
1.GIFと言うようにCGIディレクトリーを参照してしまいます。
色々と設定を変えたのですが、どうしても判りません。
もしお分かりになる方がいましたら是非ともご教示下さい。

プロバイダ参照:http://www.nifty.com/
サーバのOS:WINサーバ
パソコンのOS:WinNT系
エディタ:ワードパッド
FTPソフト:ホームページビルダー
サーバ移転:していない
改造:していない
CGI習熟度:(未選択)

回答者 いのちゃん  [削除]  投稿日 2003/12/24(水) 02:22:07
http://www.kcb-net.ne.jp/ki-net/minibbs-ic_1.22/index.html

上記は当方の設定ですが、※3 の方ではなくて、※1の方での設定ですので同じ環境に
ないのですが、下記の階層図※3 の説明によると、 (HTMLや画像等)が別の場所に設置
する必要があるサーバの場合となっています。

※3 CGIプログラムとドキュメントファイル(HTMLや画像等)が別の場所に設置する必要があるサーバの場合

    |-- cgi-bin/
    |      |
    |      |-- bbs.cgi <755>
    |      |-- icon.cgi <755>
    |      |-- jcode.pl <644>
    |      |-- cgi-lib217.pl <644>
    |      |-- resp.cgi <644>
    |      |
    |      |-- data/ <777>
    |
    |-- htdocs/
    |      |
    |      |-- bbs/ <755>
    |           |
    |           |-- index.html <666>
    |           |
    |           |-- images/ <777>
    |           |-- icon/ <755>

と言う事は貴殿の設定では/htdocs/の位置が/cgi-bin/と同じ位置に設定する必要が
あります。つまり、images や icon が /htdocs/ フォルダーの配下に設定しているか?
という事であります。

貴殿の/homepage/はもう一段上に設定すべきであると同時に、名称を/htdocs/に
変更すれば表示する可能性があります。

質問者 ほっとみるく  [削除]  投稿日 2003/12/24(水) 22:25:51
いのちゃんさん、早速のレスありがとうございます。
こちらのベースノートに一部間違った部分がありましたので訂正致します。
こちらのディレクトリー構成は、次のようになっています。

|-- cgi-bin/
|   |   
|   |-- BBS/
|        |
|        |-- bbs.cgi <755>
|        |-- icon.cgi <755>
|        |-- jcode.pl <644>
|        |-- cgi-lib217.pl <644>
|        |-- resp.cgi <644>
|        |
|        |-- data/ <777>
|
|-- homepage/
|        |
|        |-- bbs/ <755>
              |
              |-- index.html <666>
              |
              |-- images/ <777>
              |-- icon/ <755>
                    |
                    |-- 1.GIF~10.GIF

まず、このトップにある"cgi-bin"と"homepage"のディレクトリーは、@niftyが事前に
用意している、CGI用フォルダ(前者)とHTMLフォルダ(後者)で、削除や改名
させる事は出来ないようです。 改名すると「変更出来ません」と表示されます。
又、@niftyの注意書きに、「CGIからHTMLファイルを呼び出す場合は、フルパス
で書くように」とある為、icon.cgiのディレクトリ宣言には次のように書いています。

$icon_dir = "http://homepage3.nifty.com/****/bbs/icon/";
                                        ^^^^
                                         ↑
この(↑)部分は実際のサイト名が入りますが、現在は公開していません。
勿論、実際にアップロードする時や、記述の時には正しいサイト名で記述します。

次に、@niftyのCGIディレクトリーは、上図でも判るとおりcgi-binディレクトリー
に入れるのですが、実際にCGIを動かす為には次のようにアドレスを指定します。

$iconcgi = "http://hpcgi3.nifty.com/****/bbs/";
                                    ^^^^
                   ↑
この(↑)部分には、上と同じサイト名を付けます。(今は非公開中)

そして掲示板メニューにある<アイコン一覧を>クリックすると、最初に当然の如く
http://hpcgi3.nifty.com/****/bbs/icon.cgi にリンクします。
ところが、開いたページは真っ白で何も表示されません。
そこで、icon.cgiの宣言行を次のように相対パス表記に変えてみました。

$icon_dir = "../../homepage/bbs/icon/";

そして再び、掲示板メニューから<アイコン一覧>をクリックすると、一覧の画面が
開きましたが、アイコン群には赤い[×]が付いており、表示出来ません。
画像のプロパティで調べると、アイコンのディレクトリーは次のようにCGIの方を
参照してしまっているので表示出来ないことが判りました。

http://hpcgi3.nifty.com/homepage/bbs/icon/1.gif
       ^^^^^^
        ↑本当はこの部分が"homepage3"でなければならないのですが・・・。

いくら設定を見直しても間違っている部分が見あたりませんし、掲示板に書き込まれた
時のアイコンは正しく表示出来ます。 つまり<アイコン一覧>だけが表示出来ないと
言うことです。

お手数をおかけしますが、今一度ご教示下さると幸いです。
回答者 いのちゃん  [削除]  投稿日 2003/12/25(木) 00:57:49
--------------------------------------------------------------------------------

    |-- htdocs/
    |      |
    |      |-- bbs/ <755>
    |           |
    |           |-- index.html <666>
    |           |
    |           |-- images/ <777>
    |           |-- icon/ <755>

この階層図を採用されて、プロバイダーの設定条件の為に/htdocs/の所を
/homepage/に設定していると言う意味は分かりましたが、

               |-- icon/ <755>
                     |-- 1.GIF~10.GIF
ここのGIFは何ですか?

質問者 ほっとみるく  [削除]  投稿日 2003/12/25(木) 06:37:27
いのちゃんさん、再度のレスありがとうございます。

              |-- icon/ <755>
                     |-- 1.GIF~10.GIF

>ここのGIFは何ですか?

あれ、これはアイコンそのもののイメージファイル(つまり1.gif から 10.gif)を
書いたつもりだったのですが、何か違っていましたでしょうか?
あと、前の返答で書き忘れたのですが、@niftyではトップに自分で新たなディレクトリー
を作ることは出来ないようです。
つまり、自分で階層を組むには、あくまでcgi-bin(CGIの場合)か、homepage(HTMLの場合)
の下に作るしかないみたいです。

すみませんが、宜しくお願いします。
回答者 いのちゃん  [削除]  投稿日 2003/12/25(木) 14:19:10
>あくまでcgi-bin(CGIの場合)か、homepage(HTMLの場合)
これの仕様はプロヴァイダーのものですので了解しております。

>ここのGIFは何ですか?
これを見てみたいですが。訪問出来ますか?

http://www.kcb-net.ne.jp/ki-net/minibbs-ic_1.22
添付画像を使用して一度当方の掲示板に投稿してみて下さい。
“参照”を使用して投稿出来るでしょうか?

質問者 ほっとみるく  [削除]  投稿日 2003/12/25(木) 22:21:38
いのちゃんさん、大変お世話になっております。
帰宅後からアドバイスも参考にして色々とやってはいるのですが、どうしてもおかしい
と思える場所が見つかりません。
そもそも、最新バージョンからはアイコンも変数化されているので、ディレクトリーの
宣言は一カ所で良いはずですが、その部分を絶対パスにしても、相対パスにしても常に
CGIディレクトリーのイメージにリンクしてしまいます。
試しに、デフォルトのアイコンに戻してみましたが、やっぱり相変わらずです。

こちらのサイトは、稼働しているサイトの裏側でテストしているので、失敗しては削除
する状態となっている為、現在問題となっているページは消しています。
又、上記のとおり「デフォルトのアイコン」でも表示出来ないと言う事から、自分で用意
したアイコンに問題があるとは考えにくいのです。

そこで、まず問題として考えられるディレクトリー宣言行を列挙したいと思いますので
もしこれらの中で不可解な部分や、間違っていると考えられる箇所がありましたら是非
ご指摘下さい。
それと、もしこのシステムを@niftyで稼働しているサイト、あるいはオーナーがおられ
ましたら是非とも教えて頂けると助かります。(確認して参ります)
それでは宜しくお願い致します。

【bbs.cgi内の変数宣言行】(表中の****には、全て同じサイト名が入ります)

# ●画像データを記録しておく場所(イメージフォルダ)

$images_dir = "../../homepage/bbs/images/";

# ●掲示板の最初のページを示すHTMLファイルの場所(インデックスファイル)

$index_file = "../../homepage/bbs/index.html";

# ●画像データを記録しておく場所を示す仮想パス(イメージURL) 

$images_url = "http://homepage3.nifty.com/****/bbs/images/";

# ●アイコンを保存しておく場所(アイコンフォルダ) 仮想パス

$icon_dir = "http://homepage3.nifty.com/****/bbs/icon/";

# ●icon.cgiを設置した場所 .. 仮想パス http://から書いてもよい

$iconcgi = "http://hpcgi3.nifty.com/****/bbs/";

# ●インデックスファイルにアクセスするための仮想パス(URL)

$base = "http://homepage3.nifty.com/****/bbs/index.html";

# ●このプログラム'bbs.cgi'を設置した場所を示す仮想パス(URL) 

$cgi_base = "http://hpcgi3.nifty.com/****/bbs/";

【icon.cgi内の変数宣言行】

# ●アイコンを保存しておく場所(アイコンフォルダ) 仮想パス

(↓フルパスで書くと、<アイコン一覧>で真っ白のページしか表示されない)

$icon_dir = "http://homepage3.nifty.com/****/bbs/icon/";

(↓相対パスで書くとアイコン一覧画面は出るが、アイコンには[×]が表示される)

$icon_dir = "../../homepage/bbs/icon/";

※相対パスで表示されたアイコン一覧には[×]が表示されるのですが、そのプロパティ
 を調べると・・・
 http://htcgi3.nifty.com/****/homepage/bbs/icon/1.gif~
 と言うように、CGIディレクトリーを参照しています。
 又、なぜか末尾にはチルダまでついてしまっています。
回答者 いのちゃん  [削除]  投稿日 2003/12/25(木) 23:43:49
1つ1つを検証している時に当方のご質問に正しくお答え頂くこと無しにご自分のペースで
話を幾ら進めても解決は程遠いので、もう1度同じ事のお尋ねをしますので

>ここのGIFは何ですか?
これを見てみたいですが。訪問出来ますか?

http://www.kcb-net.ne.jp/ki-net/minibbs-ic_1.22
添付画像を使用して一度当方の掲示板に投稿してみて下さい。
“参照”を使用して投稿出来るでしょうか?

宜しくお願いしますね。
質問者 ほっとみるく  [削除]  投稿日 2003/12/26(金) 21:19:52
いのちゃんさん、ほっとみるくです。
行き届かない不適切な回答をしてしまい申しわけありませんでした。
せっかくのご厚意によるアドバイスと、またこれ以上のレスにより見づらくなる事を
防ぐ意味から、今後はいのちゃんさんのHPへ書き込ませて頂きたいと思います。
ただ、もし解決に至ったり、有効な対処法が得られた場合に、今後同じような事例で
アドバイスを求められる方が出ないとも限りませんので、後々のやり取りの結末を最後
のレスとして書き込み、スレッドを終了したいと思います。
その為、しばらくはこのスレッドを閉じずにおきますのでご了解下さい。

それでは、改めてよろしくお願いします。
回答者 いのちゃん  [削除]  投稿日 2003/12/27(土) 02:11:42
当方の掲示板へ一度書き込まれた内容が削除されておりましたのでここにその内容を
書きますと、貴殿の掲示板での書き込みテストした結果は画像が壊れておりました。

それはindex.htmlの中の設定の
<select name="icon" size=1>
<option value="">▼アイコン
<option value="1">1 大入
<option value="2">2 かき氷
<option value="3">3 やかん
<option value="4">4 電灯
<option value="5">5 ペンション
<option value="6">6 鳥居
<option value="7">7 手を挙げて
<option value="8">8 ひよこ
<option value="9">9 おむすび
<option value="10">10 スイカ

をbbs.cgiのLine65辺りの注意書きを無視して運用しております。
# ●アイコン名の設定
#
# アイコン名は1から順番に1.gif 2.gif … というふうにします。(拡張子は小文字)
# それぞれの画像の名前をこの設定でその数字順に設定します。
# 運用後に入れ替えてしまうと誤動作を起こしますので注意してください。

@ICON = ('大入','かき氷','やかん','電灯','ペンション','鳥居','手を挙げて','ひよこ','おむすび','スイカ');

また、当方のC:\Pals\guuze.gifを画像添付の欄の参照から採用したものが壊れて表示し
ております。念の為当方の掲示板ではC:\Pals\guuze.gifは正しく表示しております。

・改造をしているようですので、もう一度最初からDownloadから全てをやり直してみて
下さい。
・/icon/には既に上記のアイコンが1.gif〜10.gif迄含まれておりますので、先ずこの
アイコンが正しく表示するかを確認して下さい。
・参照からの画像は正しく当方の場合であればC:\Pals\guuze.gifのように登録している
かどうか、またその登録した画像が正しく表示するかどうかです。

貴殿が当方の掲示板のテスト投稿したのは1.gifを手錠の画像に置き換えたものだけで
本来の登録画像の表示がありません。
回答者 ピコ  [削除]  投稿日 2003/12/27(土) 20:39:19
ほっとみるく、いのちゃんさん、はじめまして。
私も同じCGIの設置でほっとみるく さんと
全く同じ問題が起こり数日前より悩んでおります。
私の場合も、サーバーのセキュリティの関係上、
wwwから見えないところ(一般的にpublic_htmlよりも上の階層)の、
cgi-bin フォルダにcgiプログラムを置く必要があり、
そこから、icon.cgi を起動した場合、
白紙のページになってアイコンが表示されません。

ちなみに、設置したディレクトリ構造はほっとみるくさんと全く同じです。

問題は、icon.cgi 内の
「# ●アイコンを保存しておく場所(アイコンフォルダ) 仮想パス」
のパスの指定部分にあると思います。

私の場合、cgi-bin/bbs/ 内の、
icon.cgi から iconフォルダを参照した仮想パスは、
「../../bbs/icon/」となります。

bbs.cgi内にも同じく
# ●アイコンを保存しておく場所(アイコンフォルダ) 仮想パス
がありますが、そこにも同じく

$icon_dir = "../../bbs/icon/";

としております。

この場合、bbs.cgi?form=1 からは全く問題なくアイコンが表示されます。
書き込んだあとのindex.html でもアイコンは問題なく表示されます。

icon.cgiももちろん、bbs.cgiと同じディレクトリに置いていますので、
bbs.cgiに書いた同じ仮想パスと同じ指定(この場合は../../bbs/icon/)
で良いはずです。しかし、なぜか白紙しか表示されないのです。

これは試しにやってみただけですが、
icon.cgi に指定するパスを、内部パスに変え、
../../html/bbs/icon/ とすると、
今度はテーブルと文字は表示されるものの、
アイコンのみ表示されません。
icon.cgi から見た内部パスは合っているものの、
html(public_html)という文字が入ってしまうため、
内部パスでは、生成されたhtml内でアイコンの位置指定が
間違ったものになるため当然ながらアイコンが表示されなくなります。

だから、icon.cgi の仮想パスの部分をどう指定すれば正常に表示されるか、
それを知りたいです。私はダウンロードしたものを解凍して
そのままcgiの指定部分のみ書き換えてアップしましたので
画像が壊れたとか、そんな原因ではなく、icon.cgiを
wwwから見えない上の階層に置いた際の
icon.cgiからiconフォルダを参照する
パスの指定部分に問題があるように思えます。
はじめから原因はアイコン画像にあると決め付けずに、
どうか広い視野で検証していただければと思います。
よろしくお願いします。
回答者 いのちゃん  [削除]  投稿日 2003/12/27(土) 23:16:13
http://homepage3.nifty.com/persona-torture/bbs/index.html
これはほっとみるく氏の掲示板で成功しかかっております。ご参考にして見て下さい。
回答者 ピコ  [削除]  投稿日 2003/12/27(土) 23:43:56
いのちゃんさん、ありがとうございます。
私もほっとみるくさんと同じところまで
いきましたが、先ほど断念し、簡単な解決方法を思いつきました。

アイコンの紹介ページのみ、icon.cgiを使わずに
普通にHTMLでページを作成し、
そのページに、bbs.cgiからリンクする形にしました。

具体的には

# ●icon.cgiを設置した場所 .. 仮想パス http://から書いてもよい

$iconcgi = "http://www.xxxxxx.net/bbs/icon.html";

というふうに、cgiへのパスを、
作成したページのURL に変更しただけです。

掲示板の右上の「アイコン一覧」をクリックすると
そのページが表示されますので全く問題ありません。
そしてicon.cgiは削除しました。
その他の部分は全く問題なく動いていますので、
当分はこの方法でいきたいと思います。
質問者 ほっとみるく  [削除]  投稿日 2003/12/28(日) 01:58:55
レスありがとうございます。いのちゃんさんの掲示板にレスをつけようとしたところエラー
が出てしまいましたので、こちらに書かせて戴きます。

すみませんが、いのちゃんさんの仰っている意味がよくわかりません。
まず、文中に度々見られる「C:\Pals」と言うフォルダは、どこから出てきたものなので
しょうか?
私のCドライブの中にはこのようなフォルダは存在しませんので、恐らくいのちゃんさん
のPCの中にあるフォルダを指しているのかと思われますが、私のPCのCドライブにも
このフォルダを作ると言うことでしょうか?

>貴殿の1.gif〜10.gifをC:\Pals\1.gif〜10.gifまでをASCIIでなく画像ですのでBinaryでUpして見て下さい。

この意味がよく判らないのですが、取りあえず私が用意したアイコンイメージは使用しないで
オリジナルのイメージを(何ら手を加えずに)使ってテストを続けたいと考えています。
私が用意したアイコンイメージは、まだ試験段階ですので、それを本稼働で実際に使用するか判らない上、可動
テストについては、オリジナルのイメージを使用した方が確実かと思われます。
又、ここで「C:\Pals\1.gif〜10.gif」とありますが、C:\Palsと言うフォルダが私のPCに存在していないので
どのようにすれば良いのかわかりません。

それと、レスキューさんでピコさんが言われているように、アイコンではなく icon.cgi のディレクトリー宣言
に問題があるように思えるのですが、ピコさんの解決方法であるhtmlファイルの代用でも問題ないのでしょうか?
私もそれが一番簡単ではないかと思っているのですが、何らかの障害が出なければ良いのですが。
その辺について、もし判りましたら教えて下さい。
回答者 いのちゃん  [削除]  投稿日 2003/12/28(日) 02:07:42
>貴殿の1.gif〜10.gifをC:\Pals\1.gif〜10.gifまでをASCIIでなく画像ですのでBinaryでUpして見て下さい。

こんな事まで説明が要りますか?画像を保存するフォルダーの事です。当方の場合は全てこの
フォルダーに収納していると言うだけの話です。個人個人によってその収納フォルダーは異なっても
機能上には問題がありませんが、貴殿は何と言う名称のフォルダーに画像を登録保存して
居るのでしょうか? それとも全くこういう手法を今まで採用した事が無かったと言うのでしょうや?
ちょっとこのご質問の理解度に何故かと苦しんでいるのは当方の方です。(/_;
質問者 ほっとみるく  [削除]  投稿日 2003/12/28(日) 03:07:24
すみません。 もしかしたら、私の言いたい点といのちゃんさんが考えられている事が
全然異なっているのではないかと思われます。
いのちゃんさんが今まで書かれてきたレスや、回答を読む限り、書き込んだ本文の画像
やアイコンが正しく表示されない・・・・事について説明されているように窺えます。
なので、私もいのちゃんさんの回答された「レス」に対して、何を言わんとされている
のかが理解出来ないと思います。

ここで改めて私が躓いている点を書かせて戴きます。
その前に、いのちゃんさんが書かれている、「アイコンイメージ」と「登録された画像」
が異なるものであり、収納されているフォルダーも別の場所で両者が無関係である事は
当然判っています。 ただ、私のお訪ねしたい点がそう言うことではないので、レスの
内容がよく理解出来ないと申し上げたわけです。

ベースノートの先頭でも書いたのですが、私のテストでは「既に本文テキストの投稿と
表示、アイコン表示、投稿した画像の表示」これら全ては問題なくパスしています。
私が躓いている箇所は、投稿画面の右側にある「アイコン一覧」を選択した時に正しく
表示されない(アイコン一覧が壊れていたり白紙ページが表示される)と言うことです。
恐らく、この前に書かれている「ピコさん」も同じ事を聞かれているだと思います。

私がお知らせした掲示板(私自身の)を見て頂ければ判ると思いますが、投稿や画像の
表示は問題ないはずです。 一方で「アイコン一覧」をクリックされた時には、壊れた
アイコンイメージ画像が表示されると思います。
つまり、このアイコン一覧が正しく表示出来ない・・・と言うことについて伺いたいの
です。
最初、私の掲示板にアップロードした画像が表示されなかったのは、単純に私の設定が
間違っていただけで、それは修正しましたので問題ではありません。

書き方が下手ですみませんが、改めてよろしくお願いします。
回答者 いのちゃん  [削除]  投稿日 2003/12/28(日) 04:44:20
だから最初からその疑問点があったので追求したら当方の懸念していた箇所でトラぶって
居る事がはっきりしたので、その当初の疑問点の裏づけが出来たのでやはりそうであったかと
確信した訳です。

当方は貴殿のご質問の本質に関してくどいほどお答えしている訳でこれ以上どう説明すれば
お分かりになると言うのでしょうか?????

書き方が悪のではなくて、理解力が不足しており、当方の話の本筋を理解出来ていない
だけの話です。cgiの話をしているのに、htmlの事が分かっていないのはご説明をこれ
以上しても議論が噛み合いませんので、大変申し訳ありませんが当方は正解を出し済み
ですのでこの件から降りますので、悪しからずご了承して下さいますよう宜しくお願い
しますねぇ。
質問者 ほっとみるく  [削除]  投稿日 2003/12/28(日) 14:03:05
ちょっと待って下さい。

>当方の懸念していた箇所でトラぶって

ですから、これは恐らく私の掲示板内でテストして戴いた際に画像が表示出来なかった
事を指しているのだと思われますが、これは単純に私が構文を書き違えた(理解して
いないわけではなくてタイプミスです)のであって、私の質問の本質はここにはありま
せん。

>当方は貴殿のご質問の本質に関してくどいほどお答えしている

私の質問の本質は、単純に<アイコン一覧>が表示されないと言うことですが、今まで
のレスを見る限り、本文の画像やアイコンの表示の仕方を説明されているものばかりで
「なぜアイコン一覧」を表示した時に画像が壊れたり白紙ページが表示されるのかの点
については全然書かれていないように見えますが。
このスレッドでもう一人の方も言われているように、表示出来ない問題はicon.cgiの
ディレクトリー宣言にあると考えているのですが、README.TXTの説明は元より、プログラム
の注釈も全て読んだ上でその指示に基づき構文を綴っています。
ですが、実際に表示した際にはアイコン一覧の画像イメージが壊れています。
この理由が知りたいのであって、それ以外のことは全く問題ではありません。

教えて戴いている立場でこんな言い方は失礼と思いますが、もし「本質に答えている」と
言われるのでしたら、「何故一覧のページが表示出来ないのか」に対する理由を単純に
お教え願いたかったです。
そもそも、私がファイルホルダーにアップしたプログラムを見て戴いても判るとおり、
設定以外の項目は(表示するテキスト表現は別として)いじっていません。
ですから、この設定に間違いがあればご指摘下さい・・・ともお願いしました。

私以外にもこの問題(アイコン一覧が出てこない)に躓いている方がいたと言うことは、
恐らく設定に致命的な間違いはないと思われます。
どういう事かというと、最初にも書いたとおり私が使っているプロバイダーは@niftyですが
つまりプロバイダーが用意したホームページスペースの仕様により、このプログラムの
<アイコン一覧>が対応していないのではないか、と言うことです。

いのちゃんさんが最初に書かれた一文に「(いのちゃんさんは)※1の方での設定ですの
で同じ環境にないのですが」とありますが、要するにこの部分からして質疑応答がかみ合わ
ないのではないかと考えられます。 同じ環境にない人同士が実際に理論だけで話しても
テストで同じ結果が出るとは限りませんので。

>理解力が不足しており、当方の話の本筋を理解出来ていないだけ
>cgiの話をしているのに、htmlの事が分かっていない

はい、私は確かに構文について勉強を積んだわけでもなく、単に趣味のサイトの為だけに
この掲示板システムを使わせて戴く予定です。
勉強はしていませんから、各々のコマンドが持っている意味までは理解していません。
それゆえ、肝心なプログラムコマンドを書き換えたりもしていません。
テキストとかディレクトリー設定とか“必要不可欠”な部分、“絶対に安全な部分”としか
いじっていません。
HTMLやCGIのコマンドまでは理解していませんが、私も一応ベーシック言語、パスカル言語
MS−DOS構文、とそこそこの経験は積んだつもりですので、ディレクトリー構造程度は
理解しているつもりです。 その経験も踏まえて、説明ファイルの指示通りに設定したのに
意図した結果が得られないから質問したわけですが、理解力が無いことが解決に至らないと
言われるはちょっと心外ですね。

既にいのちゃんさんは「レスから下りる」と言われていますので、私の立場上無理強いは
しません(しても堂々巡りになるだけですから)が、一応私の考えだけは書かせて戴きたい
と思ったのでこのレスを綴りました。

まだこのスレッドは(私の中で)解決していませんので、しばらく閉じずに置きます。
他の方が(レスするかどうかは別として)このスレッドをベースノートから見て、本当に
私の質問の本質に的確に答えていると感じられるかが気になりますが、私も出来るだけ
的を射た書き方を出来るように努力は続けるつもりです。

残念ながら解決には至りませんでしたが、この度は貴重な時間を割いて戴いたことにお礼を
申します。 
回答者 初心蛙  [削除]  投稿日 2004/1/9(金) 14:25:38
はじめましてホットミルク様。
僕はniftyでもないし、この掲示板をつけた事もない、困った事に初心者です。
そんな盲目の案内人ですが、ホットミルク様の2回目までの書込みを見てあれ?
と思った箇所です。

単純にbbs.cgi設定の
$iconcgi = "http://hpcgi3.nifty.com/****/bbs/";ではなく

$iconcgi = "http://hpcgi3.nifty.com/****/bbs/icon.cgi";では?

初期設定ではちゃんと$iconcgi = "./icon.cgi";となっていますよね。
icon.cgiの記述がない限り、アイコン参照は動かず、フォルダの参照を続けると
思います。

・・・これで動きますかね〜、なにせ恐ろしいほどの初心者の言う事なので。
回答者 llama  [削除]  投稿日 2004/1/9(金) 16:08:12
横レス失礼します

問題なく設定出来ました。

http://trueeye.hp.infoseek.co.jp/cgi-bin/minibbs-ic/bbs.cgi

初心蛙さんが言ってるように単純ミスかもしれませんね。

頑張って下さい。

回答者 llama  [削除]  投稿日 2004/1/9(金) 16:48:04
失礼しました。

http://trueeye.hp.infoseek.co.jp/cgi-bin/minibbs-ic/bbs.cgi?form=1

回答者 llama  [削除]  投稿日 2004/1/9(金) 16:53:03
再度すみません。

インフォシークは直にCGI呼出に制限がかけられてるようです

http://trueeye.hp.infoseek.co.jp/cgi-bin/minibbs-ic/

回答者 初心蛙  [削除]  投稿日 2004/1/9(金) 17:26:09
こんにちはllamaさん、プロバイダによって設定方法が違うって、製作する側も、設置
する側も大変ですね。

確かめる方法がこちら側にないので、先ほど書き込みませんでしたが、やっぱり書いて
置きます。
niftyではcgiのファイルを指定しなかった場合、index.cgiが表示されるそうです、それ
が白い画面の正体ではないでしょうか?
白い画面が出る時、ブラウザに表示されるアドレスは
http://hpcgi3.nifty.com/****/bbs/icon.cgi
になっていないと思います。

多分、
http://hpcgi3.nifty.com/****/bbs/
http://hpcgi3.nifty.com/****/bbs/index.cgi
・・・ではないかな〜?すいません。

またどうもicon.cgiをbbs.cgiのアイコン一覧経由ばかりのチェックで、単独でチェックさ
れていないような気がします。
icon.cgiの設定を
$icon_dir = "http://homepage3.nifty.com/****/bbs/icon/";に戻し
ブラウザのアドレスにhttp://hpcgi3.nifty.com/****/bbs/icon.cgiと入力して、ちゃんと
動くかどうか確認されてみてはいかがでしょうか??

初心者の予測&妄想なので、的が外れている可能性が高いので、違っていたら許してくださいね。
質問者 ほっとみるく  [削除]  投稿日 2004/1/9(金) 18:15:57
初心蛙さん、レスありがとうございます。
今プログラムファイルを開いてみましたところ、確かにhttp://hpcgi3.nifty.com/****/bbs/
になっていました(既に今ではこの行はリマークにしていますが)。
ですが、実を言いますと私がカスタマイズしていた時(つまりトラブっていた時)には
最後の"/icon.cgi"まで記述していました。
では何故"icon.cgi"を省略したのかと言いますと、省略した時でも正しく
http://hpcgi3.nifty.com/****/bbs/icon.cgiを参照していた為です。
つまり、白紙で表示された時も、又壊れた画像が表示された時にもこの"icon.cgi"自体は
正しく参照させていたのです。(アドレスバーの表示で確認しました)

白紙の時と、壊れた画像のページの時との違いですが、私が本文中にも書いています通り
"icon.cgi"プログラムの中にある「アイコンフォルダー」の宣言行($icon_dir = )を
相対パスで書いた時には壊れた画像が、フルパスで書いた時にはcgiフォルダーを参照して
しまう(つまりhtmlフォルダーにあるアイコンを参照出来ない)為に白紙で表示されて
しまうと言う事なのです。

ちなみに、"bbs.cgi"の宣言行を再度フルパスで指定(bbs.cgiまで記述)してみましたが
やはり壊れた画像のページが表示されました。 つまり、壊れた画像のページが出てくる
と言う事は、"icon.cgi"にはアクセス(参照)出来ているが、その先でアイコン画像の
ページにアクセス出来ないという事になります。
恐らく、niftyの制限よるものでは無いかと思われるのですが、他にプロバイダー契約を
していないので(無料のサイトではcgi制限されている為)試しようがありません。

このスレッドは、今後niftyのユーザー(このプログラムを使っている)が見られた
時に役立つかなと思い、しばらくは閉じないでおこうと思います。
ちなみに、このレスの中で別の方が書かれていた、htmlファイルの代用は全く正常に可動
しています。 有益な情報のご提供に感謝しますと共に、今後とも宜しくお願い致します。
回答者 llama  [削除]  投稿日 2004/1/9(金) 20:18:37
ニフティーはめんどくさいですね。

ニフティーCGI利用方法
http://homepage.nifty.com/cgi/index.htm?d_cgi1#no1

相対パスや絶対パスだと利用できません。
と書いてあるのでhttpから記した方が良いですね。

再度確認で申し訳無いですが
1、「icon.cgi」の「$icon_dir」が
$icon_dir = "http://homepage3.nifty.com/****/bbs/icon/";
                           ~~~~~
                            ↑ちゃんと自分のURLになってる?
になってるか確認する
(現在「homepage」になってる?)

2、現在「hpcgi3」を参照してるようなのでニフティーでは駄目と書いてあるが
プロパティーで確認した所に「icon」フォルダを置いて画像を入れてみる
(http://hpcgi3.nifty.com/****/bbs/icon/ ←このフォルダを作って画像を入れる)

3、ニフティー特有のパス設定が問題の様なのでニフティーフォーラムで質問してみる

http://www.com.nifty.com/forum/FHPG/top.go
(ニフティーの人しか入れないみたい)
「CGI設置」←このフォーラムが良いかも



今回の件はhtmlで取合えず出来るので、問題無いかもしれないが
これから先問題があるCGIを使用する時の為に解決した方が良いと思います。

解決するまで頑張って下さい。

質問者 ほっとみるく  [削除]  投稿日 2004/1/9(金) 20:28:28
llama さん、レスありがとうございます。
CGIフォルダーへのアイコン設置はダメでした。
又、icon.cgiの宣言行へフルパス(httpから)で書いた時には、CGIフォルダーが
開いてしまい、白紙ページが表示されました。
今のところはこのまま問題ないようなので、長い目で見て修正するか考えたいと思い
ます。 いろいろとありがとうございました。
回答者 初心蛙  [削除]  投稿日 2004/1/11(日) 01:37:52
予測はやっぱりはずれましたか〜、ごめんなさい。
niftyでやってみました、白いページはicon.cgiが起動している状態でした。

icon.cgi19行目
$check = (eval { opendir(DIR,"$icon_dir"); }, $@ eq "");
この部分は相対パスは受け付けるがURLでは失敗する。

49行目
print "<td align=center bgcolor=#ffffff><img src=\"$icon_dir$i\.gif\" alt=\"$i $ICON[$i]\"></td>\n";
逆にこの部分、niftyはURL表記でないと画像ファイルを表示出来ない!

という事で$icon_dirを相対パスにしてもURL表記にしても、icon.cgiは正常に動いて
くれないのです。(涙)

やり方は沢山ありますが、とりあえずこのようなやり方はいかがでしょう?

# ●アイコンを保存しておく場所(アイコンフォルダ) 仮想パス

$icon_dir = "../../homepage/bbs/icon/";
$icon_dir1 = "http://homepage3.nifty.com/****/bbs/icon/";←これを追加

49行目
print "<td align=center bgcolor=#ffffff><img src=\"$icon_dir1$i\.gif\" alt=\"$i $ICON[$i]\"></td>\n";
                          ~~~~~~~~~~
$icon_dirを$icon_dir1に書き換える。

これで動きますよ!
回答者 初心蛙  [削除]  投稿日 2004/1/11(日) 11:10:54
初めて質問される方に言いたいです。
書き込まれる時には、よ〜く過去ログ(電子掲示板・チャット関係)を読まれて下さい。
これは一般で言う同じ事例があるか?という事ではないです。
嫌な思いをするのを回避したり、ある程度の覚悟を決める為にです。
ちゃんとした掲示板だからと言って、回答する側が有能とか常識的な人間とは限りません。
過去に様々な掲示板で、何人もの人を怒らせ、傷つけたりして荒らし行為を行っていたの
に、掲示板が荒らされるので困って下さいという人にアドバイスをのうのうとつける人もいました。
また素行が悪いので管理人から追い出されたのに、偽名を使ってまた書き込むというな人もいます。
質問する側は先生を選べません、嫌な思いをしたくなければプログラムのエラーと一緒で
色々と想定しなければいけないと思います。
(ちゃんとした掲示板では普通はないと思うが・・・ここは特殊になってしまっているようですから)
質問者 ほっとみるく  [削除]  投稿日 2004/1/11(日) 11:53:39
初心蛙さん、レスありがとうございました。
こちらで早速試してみたところ、無事に表示する事が出来ました。
わざわざniftyでテストまでして戴き恐縮です。
簡潔明瞭な答えで、cgi初心者の私にもすぐに実行出来ました。
又、ある程度の構造と流れ、理屈も理解する事が出来ました。
こちらのcgiプログラムには大変お世話になっていて、今回のようなトラブルは
他のプログラム(チャットとか)で発生していないので、当初はほとほと困り果てて
いましたが、htmlファイル代用の方法で救われました。
又、今回「niftyの構造が原因であること」が判り、他のniftyユーザー
が今後同じ原因でここを訪れる事があった時にも、大変有益な資料として残す事が
出来たことに感謝します。 改めてお礼致します。

あと、初心蛙さんが、最後のレスとして書かれていた内容ですが、私も取りあえず
この「簡易BBS」に関する掲示板は最初からある程度(スレッド数が多かった為
タイトルを見ただけのものもありますが)読んでみました。
私が感じたところでは「ほのぼのとしたやり取り」が展開されていて、初心者の方
に対してもそれなりに分かり易い対応をして貰っているのだなと思いました。
最初、このサイトの冒頭で「ここはある程度cgiの知識と経験がある人の為の」
を読みましたので、正直掲示板に質問を書く事すら躊躇っていたのですが、実際に
他のプログラム(チャットなど)は可動させる事が出来たわけですし、超初心者的
な質問でも無いだろうと言う考えのもとで書かせて戴きました。
又、もしプログラムの構造とサイトの制約との関係で動かないのであれば、将来的
に同じ事で躓いているユーザーの資料として残る事にもなるわけですからね。

実はこのスレッドで“最初のやり取り”があった後、こちらのサイトの管理人さん
からメールを戴きまして「不快な思いをさせてしまってすみません」と言う内容の
メッセージを戴きました。
私自身は、パソコン通信(今から15年ほど前になりますが)の時代から、様々な
掲示板で質疑応答をしてきまして、時にはお互いの感情がヒートアップしてバトル
モードに発展した事もありますからさほど気にしてはいませんでしたが、インター
ネット初心者の方は(プログラムの経験は別としても)、ちょっと気にされるかも
知れませんね。
かの有名な巨大掲示板「2ちゃんねる」でのやり取りを経験されると、結構慣れる
ものですが(^^;)、取りあえず冷却期間を置いてみるのも良いかも知れません。
回答者が一人とは限りませんから、いずれ良い解決策に繋がるという事も十分ある
わけですからね。

さて、長い書き込みになってしまいお見苦しいところを晒してしまいましたが、
このスレッドは解決として閉じても良いでしょうか?
もしこれ以上レスが無ければ、数日後に閉じたいと考えています。
この度は色々とありがとうございました。

回答者 初心蛙  [削除]  投稿日 2004/1/12(月) 03:01:32
ちゃんと動きましたか〜、安心しました、出来ます!と言って出来なかったらどうしよう
とヒヤヒヤしていました。
今回の件はもう少し時間があれば、ほっとみるくさん自身が解決されていたと思います。
自身の書込みで答えは書かれてましたからね。

上の書込みすいません、まわりくどい書き方はいけませんでしたね。
僕は一通り過去ログ読んだけど、普通は自分の関係する所じゃないと読まないですね。
http://www.rescue.ne.jp/CGI-BBS/chat/minichat/20010323163409.shtml
http://www.rescue.ne.jp/CGI-BBS/chat/2shot/20010401030308.shtml
http://www.rescue.ne.jp/CGI-BBS/beginners/jcode/20020518122243.shtml
http://www.rescue.ne.jp/CGI-BBS/bbs/diary/20040103143747.shtml
・・・こういう事なのです。
回答者 llama  [削除]  投稿日 2004/1/12(月) 09:39:24
ほっとみるくさん動作してよかったですね。

久しぶりにここに訪れましたが、数年前同じHNで投稿してまして
その時からの人達が継続して回答してる事に驚き出てきてしまいました。

同じような投稿を繰り返してる人もいて、このまま嫌な思いをして出来ないのも・・
と思い、解決に至らない返信でも取合えずしてみました。^^;


初心蛙さんみたいな人がいれば安心ですね。


質問者 ほっとみるく  [削除]  投稿日 2004/1/12(月) 12:14:02
初心蛙さん、llamaさん、又これまでこのスレッドで回答、レス頂いた皆様
いろいろとありがとうございました。

>今回の件はもう少し時間があれば、ほっとみるくさん自身が解決されていた

実際私の場合、基本の勉強を積んでいるわけではなかったので、更に掘り下げること
なく、恐らくはあのままhtml化されたファイルを使っていたと思います。
でも、初心蛙さんのおかげで胸の支えが取れまして大変嬉しく感じます。
プログラムをいじったり、DIYする事自体は大変好きなので、暇を見て私ももっと
基本を学ぶべきだな、と感じました。

>こういう事なのです。

なるほど、様々な方がいますね。 まぁ、多少喧嘩腰なやり取りも多少はありますが
全体としてはそれほどヒートアップされた内容ではないとも感じますが、これは個々
の経験とか過去の体験の違いにより感じ方もまちまちでしょうね。
デジタルの世界でも、末端にあるものは人と人のやり取りなんですから、掲示板に限らず
お互いを理解し合う気持ちと、自分自身を見つめ直す冷静さが大切ですね。


>解決に至らない返信でも取合えずしてみました。^^;

ありがとうございます。 私自身もそうですが、今回のスレッドは基本的にniftyの
HPスペースの仕様が絡んだトラブルのようでしたので、他のユーザにもきっと有益な
資料として残るものと思います。

ありがとうございました。 これにて、このスレッドを閉じたいと思います。

 

このページは終了したので返信(回答)は書きこめません
 


Web裏技