• ベストアンサー

CGIでのファイルUploadのファイル名

お世話になります。 現在、CGIでファイルをUPするサイトを作成しております。 ファイルをUPしたり、サイズ制限・MIMEタイプによる制限まで出来たのですが、 ファイル名に半角カナを使用すると、化けるという現象が出ております。(UPしたファイル名をブラウザに表示しています。) できれば、対応可にしたいのですが。 それとも一般的に、半角カナのファイルは許可しないものなんでしょうか? 回避方法をご教授願えませんでしょうか? 宜しくお願い致します。

  • Perl
  • 回答数2
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • pipipi523
  • ベストアンサー率40% (148/365)
回答No.2

文字コード変換などの問題で半角カタカナはすぐに文字化けしてしまいます 回避方法としては"半角カナを全角カナに置き換える"でしょうか http://www.shtml.jp/mojibake/hankaku.html

その他の回答 (1)

  • Deep__Blue
  • ベストアンサー率48% (1590/3297)
回答No.1

FTPやWWWサーバは通常(というか殆ど)半角英数しか扱えません。

関連するQ&A

  • CGIでファイルを圧縮するには?

    CGIのアップローダーを使用しています。 .docなどのファイルがDLではなく、WORDで自動的に 開かれてしまうので、ZIPなどで圧縮したいと考えています。 過去ログなどを参照して .htaccessでmimeをいじってみましたが、DLできるようにはできずエラーもしくはWORDが起動となります。 また、cgiでmimeをヘッダに吐き出すのは使えそうなのですが、10MBなど大きいファイルもあるので、これを使うとサーバ負荷がかかってしまいます。 UPした際サーバで圧縮し、保存するにはどのようにすればいいでしょうか?

    • ベストアンサー
    • CGI
  • CGIで日本語名ファイルのアップロード

    日本語名のファイルをアップロードするCGIを教えて下さい。 下記ページを参考にさせていただいて、半角のファイル名はアップロードできております。 http://www.harukaze.net/~mishima/perl/module/upload_by_CGI_pm.html よろしくお願いいたします。

    • ベストアンサー
    • Perl
  • ファイルをアップロードするフリーのcgi

    お世話になります。 教えていただきたいのですが、 サイトの管理者がブラウザ上でファイルをアップロードできて サイトの訪問者がそれをブラウザ上でダウンロードできる そんなフリーのcgiを探しています。 http://www.kent-web.com/data/upload/upload.cgi こんなような感じのものです。 しかし上記のものは1ファイルあたりの容量制限がかけられています。 容量制限が5メガバイト以上のもの知っているかたいたら教えてください。

    • ベストアンサー
    • CGI
  • 外部CGIファイルの読み込み

    アクションスクリプトで外部CGIファイルを読み込む動作を勉強中です。 色々なサイトや書籍を参考にさせて頂いているのですが、その中で読み込みファイルを"ファイル名+ランダムな数字"としているものがありました。 説明では、『ブラウザのキャッシュが使われない為、毎回違うデータを作成する』とあるのですがなぜこれで動作するのかが分かりません。 実際のスクリプト部分は… CGIFile = "test.cgi?" + Math.floor (Math.random () * 1000); myLoadVars.load (CGIFile); です。 これでは読み込み対象のファイル名が"test.cgi?319"などとなってしまうのでエラーとなるように思うのですが…。 実際、書き出してみると"Error opening URL"と出力されます。 ローカルサーバー(ActivePerl使用)で試してもCGIは読み込まれません。 ですが、レンタルサーバー上にアップしてみるとちゃんとCGIが読み込まれていました。 なぜこのようになるのでしょうか? ローカルサーバーとホストサーバーにアップした場合で結果が変わるのもよく分かりません。 他のCGIは動作するのでローカルサーバーの設定は合っていると思うのですが…。perlのバージョン等でしょうか?CGIは全くの初心者でその辺のことはまったく分からないのですが…。 『ブラウザのキャッシュが使われない為…』とありますがこの意図も掴めずにいます。 ご教授頂ければ幸いです。よろしくお願い致します。 環境はwindowsXP,Flash8as2.0です。

    • ベストアンサー
    • Flash
  • ワードパッドが起動して、cgiファイルとして保存できない

    CGI環境は整っています。 Minibbsなら、アップしたこともあります。 Web 裏技で、過去ログ検索機能のある、掲示板、 trees.cgiをソース表示して、 保存しようとした所、 ワードパッドが起動しました。 ワードパッドでは、拡張子が5つしかないから、 cgiファイルとして保存することはできないですよね? メモ帳を起動して、貼り付けてみましたが、 メモ帳では、全部のソースを貼り付けられないみたいです。 やりたいのは、ソース表示して、「trees.cgiというファイル名で保存する」、です。 URLはこちらです。 http://www.rescue.ne.jp/cgi/trees/trees.txt 仕様OS WindowsMe ブラウザ IE5.5 自分のプロバイダーで、CGIは許可されています。 何か、いい方法があったら、教えてください。 よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • CGIを実行すると、あなたが指定したファイルは見つかりませんとなる。

    趣味で自分のHPにヒロ・データベースのCGIを設置したくて、全くの初心者からCGI設置に挑戦しているのですが、初歩からうまくできなくて困っています。自分なりにネットで調べても、うまくいかないので助言を御願します。OSはwindowsXPで、CGIファイルの編集にはTerapadを、転送にはFFFTPを使っています。レンタルサーバーはtok2を使っています。  ヒロ・データベースをDLして一行目(#!/usr/bin/perl)とパーミッションをTOK2(http://tok2.com/cgi.html)の指定通り変更して設定して、アップすると500 Internal Server Errorと出て、ここで詰まってしまったので、もっと簡単なCGIから挑戦しようと思い、http://web-up.cside.biz/cgi_3.shtml を参考にして、 初歩的なCGIを設置してみたのですが、「あなたが指定したファイルは見つかりません」と出ました。このエラーメッセージから、アドレスが間違っているかファイルがアップされていないんだろうと思ったのですが、cgiファイルと同じ場所に入っているindex.htmlにはアクセスできて、index.htmlをrensyuu.cgiと書き換えてもダメ(半角英数でちゃんと打ちました)で、ファイルがアップされていないのかと思ってもFFFTPの右側のホストのファイル一覧にはrensyuu.cgiと出ています。cgiファイルはアスキーモードで転送しています。 ここまでで、何か抜けていることや、私が勘違いしているようなことが分かれば教えて欲しいです。御願します!

  • ロリポップでのCGIファイルの使用について

    ホームページ作成ソフトで、携帯用サイトを作りサーバーにアップロードしたのですが、 ブラウザで確認するとエラー403がでてしまいます。 ソフトのユーザーサポートに問い合わせたところ、プログラムには問題がないので、 サーバーとCGIの関係で問題があるのではとの事でした。 エラー表示の注記に <CGIを利用の場合は「index.cgi」 の名前のファイルが無い場合、エラーが発生いたしますのでご注意ください。> とあったので、 試しにcgiのファイル名に「index.cgi」と入れてみたのですが、同じエラーが表示されてしまいました。 この場合、うまくブラウザに反映させるにはどのようにすれば良いのでしょうか。 利用環境・状況は次の通りですので、よろしくお願いいたします。 ■OS windowsXP ■ブラウザ IE ■アップロードしたファイル 「htmlファイル1つ」と「cgiファイル1つ」 ちなみに、htmlファイル単体ではブラウザに表示されるようです。

  • Excelのファイル名について

    ちょっと困ったことがあるので、ご存知の方回答お願いします。m(__)m 実は、Excel2000のテキストが2冊あるんですが、「名前を付けて保存」 の時にファイル名に制限があると記述があります。 しかし、1冊はファイル名の長さは、半角で255文字(全角127文字)とあり、 もう1冊は半角で250文字(ただいパス長が259文字)とあります。 どっちが正しいのでしょうか。 それと、ファイル名にパス長を書くとはどんな使い方なのですか。 初心者のつまらない質問ですが、どうか教えて下さい。

  • 教えてください!CGIでフォトアルバムを作っています。

    フリーでダウンロードしてきたCGIでフォトアルバムを制作しています。ブラウザから写真(JPEG)のデータをアップロードして、自動的にレイアウトしてくれるというものです。CGIは一応動作するのですが… アップする写真データの容量は512Kまでの設定になっています。 いろいろ試した結果、こんな状態です。 ●winからアップロードできるファイルとできないファイルがある ●winからは極端に小さいJPEGデータならアップできる(おそらく) ●macからだと容量制限内のJPEGであればアップロードできる ●同じ写真のデータでも、winからはアップできないのにmacではできる ●使用しているブラウザは、winはIE6.0、macはIE5.2 macではCGIはちゃんと動くので、CGIの問題ではないような気がするのですが。。。どうでしょうか?何が原因なのかさっぱりわかりません。 winで正常動作しないっていうのが、すごく気になってまして。。。 どうかお力を貸してください。 ちなみに、使っているCGIはこれです。 http://scrlab.g-7.ne.jp/cgi_php/album.php

    • 締切済み
    • CGI
  • fopen で半角カナファイル名

    XP apache2.0系 で起動しているサイトのファイルを fopen で開こうと思っています。 タイトルでも触れていますが、ファイル名が半角カナファイル名なんです。 ブラウザで直にパスを打つとダウンロードのやつが開くのでパスは大丈夫だと思います。 fopen で開こうとすると failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found  が出ます。 ファイル名が半角英数字であればfopenは問題ないです。 半角カナ部分の取り扱いだとは思うんですけど (1)PHP側で変換すればうまくいく? (2)apacheの設定変更でうまくいく? どっちなんでしょう?それとも他の手段を用いるべきなんでしょうか? ちなみに そのファイルが配置してあるディレクトリ一覧をブラウザで表示すると 半角カナファイルは文字化けして表示されています。 なので、私は(2)かなと思っているんですけど。

    • ベストアンサー
    • PHP