WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:ファイルの有無を確認

えつ [MAIL] [WriteDate : Mon Jun 25 17:02:55 2001]

はじめまして。えつと申します。
ファイルの有無を確認する方法についてお尋ねします。

<INPUT TYPE="FILE">で指定されたファイルがローカルに
存在するかどうかをJavaScriptでチェックする方法は
ありませんでしょうか?
通常は「参照」ボタンからローカルに存在するファイルを
指定しますが、イレギュラーでユーザーが直接入力した
場合のチェック処理を行いたいのです。

ファイルの有無を確認する方法がないようならば、テキストの
領域にキー入力が出来ないようにしたいのですが、その方法も
わかりません。

申し訳ないのですが、どなたか教えていただければと思います。
よろしくお願いいたします。


yuu [MAIL] [URL] [WriteDate : Mon Jun 25 19:12:59 2001]

アプリケーション側で、送られてきたものが0byteのファイルだったらエラーを返せば良いのでは?


えつ [MAIL] [WriteDate : Tue Jun 26 10:35:41 2001]

yuu様、回答ありがとうございます。
最終的には指定されたファイルをFTPするのですが、
やはりJavaScriptやCGIではチェック出来ず、FTPの際に
チェックするということでしょうか。
DBに登録する必要があるため、それ以前チェックしたかった
のですが、仕組みを再検討しようと思います。

ありがとうございました。


yuu [MAIL] [URL] [WriteDate : Tue Jun 26 20:34:15 2001]

>やはりJavaScriptやCGIではチェック出来ず、FTPの際に
>チェックするということでしょうか。
CGIでチェックしてはどうか、というのが僕の提案なのですが、ftpの際にチェックというのがよくわかりません。

>DBに登録する必要があるため、それ以前チェックしたかった
>のですが、仕組みを再検討しようと思います。
ちなみにJavaScriptでチェックしたところで、だから何だというか、クライアントサイドでのエラー処理はトラフィックを軽減するため以外の何物でもなく、サーバサイドでのエラー処理が正しく行われているという大前提のもとでのみ有効な手段であると、僕は認識していますがどうなのでしょうか。


たこすけ [WriteDate : Tue Jun 26 21:03:28 2001]

> テキストの領域にキー入力が出来ないようにしたい
おまじない程度に
onFocus="this.blur()"
と書くとか。

> イレギュラーでユーザーが直接入力した場合
ファイルを参照しないで送信という場合の方が多そうですが…


えつ [MAIL] [WriteDate : Wed Jun 27 10:33:49 2001]

yuu様、たこすけ様ご回答ありがとうございます。
私の説明が不十分にもかかわらず、教えて頂き感謝、感謝です。

>CGIでチェックしてはどうか、というのが僕の提案なのですが、ftpの
>際にチェックというのがよくわかりません。
CGIはサーバー上で動作し、クライアントのローカルに対し、
ファイルの有無をチェックすることは出来ない・・・と理解して
いるのですが、そこから間違ってるのかな???

>ちなみにJavaScriptでチェックしたところで、だから何だというか、
>クライアントサイドでのエラー処理はトラフィックを軽減するため
>以外の何物でもなく、サーバサイドでのエラー処理が正しく行われて
>いるという大前提のもとでのみ有効な手段であると、僕は認識してい
>ますがどうなのでしょうか。
このシステムが一般向けではなく、一般に公開するHPをメンテナンス
する為の管理用であるため、なるべく入力値に対して妥当性を追及した上で
DBサーバーやHPサーバーへアクセスさせたいと言うことです。
管理する方がHTMLなど、WEB全般に対する知識のない人なので
なるべく手戻りの少ないタイミングでエラーを出さないといけない
らしいのです。。。

>おまじない程度に(省略)
やってみます!

>ファイルを参照しないで送信という場合の方が多そうですが…
項目未入力チェックで引っ掛けるようにしました。

言い訳がましくなってしまいました・・・。
私自身WEBのお仕事をはじめて2週間なので意味不明なことも
書いているかと思いますが、よろしくお願いいたします。


yuu [MAIL] [URL] [WriteDate : Wed Jun 27 13:45:19 2001]

>CGIはサーバー上で動作し、クライアントのローカルに対し、
>ファイルの有無をチェックすることは出来ない・・・と理解して
>いるのですが、そこから間違ってるのかな???
クライアントPCがイントラのネットワークドメイン内のクライアントPCだという前提であれば、CGIアプリケーションにドメインアドミンの権限を持たせることで、クライアントPCのディスク内を直接見ることが出来ます(出来ることとやることというのは別の話になりますが)。
しかし無いファイルを送信しようとしても、結局それは0byteのファイルにしかならないのだから、CGIアプリケーションがそれを判断してエラーを返せば済むのではないですか。

>このシステムが一般向けではなく、一般に公開するHPをメンテナンス
>する為の管理用であるため、なるべく入力値に対して妥当性を追及した上で
>DBサーバーやHPサーバーへアクセスさせたいと言うことです。
サーバ側でのエラー処理を省くことの根拠とは到底思えませんが。

>管理する方がHTMLなど、WEB全般に対する知識のない人なので
>なるべく手戻りの少ないタイミングでエラーを出さないといけない
>らしいのです。。。
Web全般というのがよくわかりませんが、ともかく熟知していない人向けのアプリケーションを書いているのだったら、尚のことサーバ側でのエラー処理には慎重になるべきなのではないでしょうか。

>>おまじない程度に(省略)
>やってみます!
繰り返しますが、JavaScriptではじこうがはじくまいが、サーバ側で実際にファイルが送信されてきているかどうかのチェックをしなければなりません。

>>ファイルを参照しないで送信という場合の方が多そうですが…
>項目未入力チェックで引っ掛けるようにしました。
これも同様に、サーバ側でも項目が未入力か否かをそもそもチェックしなければなりません。


えつ [MAIL] [WriteDate : Wed Jun 27 14:04:10 2001]

yuu様、丁寧なご指摘ありがとうございました。
サーバー側でもチェックは掛ける仕様になっており、サーバー側の
チェックはご心配頂いたとおり、慎重なものとなっております。
そのために、なるべくエラーをクライアントでチェックする必要性を
迫られているという状況です。(SEとお客様の要望で・・・)
言葉が足りず、申し訳ありません。
今回、yuu様ならびにたこすけ様に教えていただいたことを年頭に
開発していこうと思います。

ありがとうございました。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]
ChaichanPAPA's World