アプリ版:「スタンプのみでお礼する」機能のリリースについて

PHPでファイルアップロードする場合に、
アップロード前に選択したファイルサイズを
Javascriptで取得したいのですが可能でしょうか?

A 回答 (2件)

FileSystemObjectを使えば可能ですが、ActiveXObjectを生成するので大抵の場合、ブラウザの保護機能により失敗します。


上記オブジェクトの生成が許可された環境なら、以下のScriptを試してみてください。

//ファイルサイズ(実バイト数)を返すメソッド
function getFileSize(path) {
  var fso = new ActiveXObject("Scripting.FileSystemObject");
  var f = fso.GetFile(path);
  return f.Size;
}
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
pathはフォーム値のvalueで取得のようですね。今夜試してみますね。
ActiveXは、MACでも動作できるでしょうか?

お礼日時:2008/04/23 16:31

確かMacは無理だったはずです。


Windowsでも、IEだけだったような気がします。(あまり自信ありません)


何を目的で、アップロード前にサイズを知りたいのかにもよりますが、
単に、でかいファイルの、無用なアップロード処理時間を無くしたいってあれば、
hidden要素で、MAX_FILE_SIZEを指定とか可能です。
http://phpspot.net/php/man/php/features.file-upl …
PHP側でも、MAX_FILE_SIZEでアップロードしていないって言うのを取得可能です。
http://jp.php.net/manual/ja/features.file-upload …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!