ラウンジ(兼FAQ掲示板)

ColorfulBoardの画像アップロード設定
過去ログ NO.1038417559
□ shu [2002年11月14日00時18分]
初めて書き込みをさせていただきます。shuと申します。
ColorfulBoardを頂きました。どうもありがとうございます。

指示どうりに設定をしてcgiをアップロードしたつもりなのですが、サイトへのファイルのアップロードが表示されずこまっています。
出来るだけ自分で解決しなくてはと思い、設定を変えてみてはテストを繰り返しやってみたのですが、どうもうまくファイルが表示されません。
お力をお借りしたく、書き込ませていただきます。どうぞよろしくお願いします。

現状の状態はこのようになっています

ホームページサーバー:biglobe
ホームページサーバーURL:
http://www5e.biglobe.ne.jp/~shuhp/
自分のホームページ:
http://cgi.www5e.biglobe.ne.jp/~shuhp/colorfulboard/cb3.cgi
設定cgi:

http://www5e.biglobe.ne.jp/~shuhp/error.htm
管理モードのパスワード:poirot

添付したファイルが×印になって表示されます。それをダウンロードしようとしても、落ちてこない状態です。
また、FTPで設置した/upload/に、アップロードしたはずの、ファイルが入りません。


お手数だと思いますが、見ていただけると幸いと思います。どうぞよろしくお願いします。
□ shu [2002年11月15日09時15分]
追記です。

本体cgiの7行目の

$updir = "./upload/";



$updir = "http://www5e.biglobe.ne.jp/~shuhp/colorfulboard/upload/";

に変えると、通常表示されるBBS(BBSのトップ)には、画像が表示されるようになりますが、書き込みの際、画像などを添付すると、

ERROR !
ファイルのアップロードに失敗しました

と表示されるようになってアップロードが成功しません。二律背反の状態になってしまいます

間違ってしまっているところなど、ご指摘をお願いいたします。
□ NXer [2002年11月18日22時36分]
はじめまして。NXerです。www5aを利用しています。よろしく。

> $updir = "http://www5e.biglobe.ne.jp/~shuhp/colorfulboard/upload/";
> に変えると、通常表示されるBBS(BBSのトップ)には、画像が表示されるようになりますが、書き込みの際、画像などを添付すると、
> と表示されるようになってアップロードが成功しません。二律背反の状態になってしまいます。間違ってしまっているところなど、、、

まず、私の考え方です。

bigolobeでは
1)htmlサーバー内のiconやuploadの画像をブラウザーで読みます。
2)cgiのサーバーは1)のサーバーとは異なります。このことは、そちらの
BBSにもどなたか書き込みされているとおりです。私の方も、cb3.cgi
は相対(又は絶対)パスに従って確実にuploadデイレクトリに画像を書き込んでいます。

パスの説明は一般的な解説が多くて役に立たないかもしれませんが、
基本的には、ブラウザーの文脈とcgiの文脈を分けることで十分かと
思います。以下に私の解決法を示しますが、パスを読むときご注意ください。

1、setup.cgiを起動したところ、cb3.cgiが↓のように生成されました。
  www5a.biglobe.ne.jp/~xxx/colorfulboard/cb3.cgi

2、このcb3.cgiをFTPでダウンロードしてエディターで編集しました。

3、変数の代入を↓のようにしました。(一部x、z、nxerなど読み替えてください。)
--------------------------------------------
$updir ="/homex/zzz/nxer/public_html/colorfulboard/upload";
$gupdir ="http://www5a.biglobe.ne.jp/~nxer/colorfulboard/upload";
$icon = "http://www5a.biglobe.ne.jp/~nxer/colorfulboard/icon";
----------------------------------------
なお $updirは相対パス、つまりすえぽんサイトさんの指示通り
元のままでいいと思います。ここは絶対パスなら可能と考えて
試したまでです。これはcgiの文脈で有効なものです。つまり
これで画像添付などが実行されます。

次にブラウザーの文脈として画像があるのにx印が出ることを
解消するため、フルパスで記述しました。多分どちらも試された
わけですが、文脈が違うため、「二律相反」現象が発生したこと
と思います。

perlスクリプト中のパスですが、cgiのパスとブラウザーのパスを
perlのスクリプトから読み取ることが可能です。
<a href='$updir/$filename  → <a href='$gupdir/$filename
<img src='$updir/$filenameimg → <src='$gupdir/$filename

のように置換します。幾つかありますが、エディターの検索モードで
関係するものを選び書き換えてみました。cb3.cgiをFTPでアップロード
して、ブラウザーから呼びだすことができました。

なお、上記よりもエレガントな解決法があるかと思いますが、
この考え方と方法でよろしかったらお試しください。
Good luck to you!
□ shu [2002年11月19日02時31分]
NXerさま、画像がアップロード出来るようになりました。どうもありがとうございました。

ホームページ作成にチャレンジしたばかりなので、正直こちらに書き込ませていただくことも、「質問いいのかな?」と、思っていました。ご教授くださいましたNXerさんのご好意、大変嬉しく思いました。
改めて、どうもありがとうございました。

suepon.com | CGI作成/CGI制作 | JavaScript | ドメイン検索 | バナー自動作成 | Google ダンスツール | 松浦亜弥 | H.P.memo | パソコン | ネイル

Copyright (C) 2002 - 2008 suepon , All rights reserved. Powered by CGI Script Market.