CGIでファイルの保存先フォルダーを指定するには?

[上に] [前に] [次に]
匿名希望 1998/10/20(火) 23:46:56
open(OUT, "> /html/bbs/$FORM{MESSAGEID}.html");


というような、文を書いたら、
/html/bbs/19981021030548.html
というファイルが、cgi-binフォルダーに作成されてしまいます。
/html/bbsフォルダーの中に
19981021030548.htmlファイルを保存するにはどのように書けばよ
いか、分かる方いますか?

何か、初歩的なミスのような気がするのですが、よろしくお願いします。
デバッグをMacPERLでやっています。
サーバの上では、CGI-BINフォルダーに書き込みができないようにプロバイダーに設定されているため、他のフォルダーに書く必要があります。



B-Cus 1998/10/21(水) 00:50:55
Macでのパスの区切りはなんですか?(僕は知らない)
UNIXだと「/」、DOSだと「\」ですけど。

もしMacもパスの区切りが「\」だとしたら、
 open(OUT, "> \\html\\bbs\\$FORM{MESSAGEID}.html");
でどうですか?

Tiot 1998/10/21(水) 01:21:36
たしかMacのパスの区切りは":"だったような。
#でも、MacPERLは/でも解釈してくれるんでしたっけ?
最初に/ではじめてもルートディレクトリのしたにできていないことが
原因かもしれないので(カレントの下にできている)
open(OUT, "> ../html/bbs/$FORM{MESSAGEID}.html");
とかと、相対パスで書いたらどうでしょう。
Macintoshも確かドライブの概念を普段使っていたと思うので、
ルートディレクトリからの指定がうまくいかないのかも。
MacPERLを実際に使ったことがないので、文章がふにゃふにゃになって
しまいましたね。ごめんなさい。

元質問者 1998/10/21(水) 08:50:10
B-Cusさん、Tiotさん、有り難う御座いました。
しかしやはり、
../html---
\\html---
(":"を使った場合、何のファイルも作成されませんでした。)
というような、ファイルが、作成されてしまいます。
もう一度自分で、試行錯誤しながら試してみます。
結果が出たら、報告いたします。

有り難う御座いました。

元質問者 1998/10/22(木) 18:16:27
[[解決]]
お騒がせしました。
サーバーにCGIを置いたら、うまく動作しました。
MacPerlでの動作は、依然として解決できていません。

[上に] [前に] [次に]