[PHP-users 9854] Re: ファイルアップロードの不思議な現象

UNO Shintaro php-users@php.gr.jp
Fri, 06 Sep 2002 19:55:17 +0900


>> 今議論しているのは、例えば
>> C:hoge.txtと入力したらちゃんとC:\hoge.txtのファイルと認識されたり
>> D:hoge.txtと入力してもD:\hoge.txtのファイルと認識されなかったり
>> していることなんです。
>> なので、例え上記のようにコードを書き直したところで、結果はやはり
>> 同じです。(実際に試してみました)

>ファイルシステムとも違うようですね。いったい何が理由なのかわかりません。
>> つまりクライアント側の問題である可能性が極めて高いわけです。
>おっしゃるように、たぶんクライアント側の問題なのでしょうが、

DOS,Windowsの

* ドライブ指定の後にディレクトリ指定を記述せずファイル名だけを
  書いた場合はそのドライブのカレントディレクトリ内のファイルを指す

* 各ドライブ毎にカレントディレクトリが存在する

という動作を考えれば別に不思議なことではないです。
単に、クライアントのカレントディレクトリ状態が(その例では)、

* Cドライブのカレントディレクトリは\になっていた
  (だからC:hoge.txtという指定はC:\hoge.txtと同じ意味になる)

* Dドライブのカレントディレクトリは\以外のディレクトリになっていた
  (だからD:hoge.txtという指定はD:\hoge.txtと同じ意味にならない)

ということではないでしょうか。

問題は「存在しないファイルをアップロードしている」とかじゃなくて、
「カレントディレクトリを起点としたファイル指定はWindowsのGUI環境では
訳が分からない」ということだろうと思います。

-- 
UNO Shintaro, 宇野 信太郎
mailto:uno@venus.dti.ne.jp
http://www.venus.dti.ne.jp/~uno/