We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 32325
    • 10 Posts
    お世話になっております。
    お知恵をお借りできればと思います。

    0.9.2.1でfckeditorを使用しておりますが、画像貼付け(木のアイコン)時に利用しますリソースエディタで日本語表示のファイルをアップロードしますと、アップロード完了後に全ての画像が見えなくなります。ディレクトリの移動は可能なようですが、やはり画像としては何も表示されません。(添付参照)

    現象といたしましては以下のページと似ているのではと思い記述されている内容を試してみたのですが、うまく回避することができませんでした。
    http://modxcms.com/forums/index.php/topic,4578.msg35323.html#msg35323

    リソースブラウザで日本語のファイルをアップロードまたは選択できるように修正するにはどのようにすればよいのか、ご存知の方はいらっしゃいませんでしょうか。

    ご教授いただければと思います。
      Whitelinks:)
      • 6158
      • 224 Posts
      こんにちは、Whitelinks さん。


      「へぇ、そんな事が出来るのか」という程度の modx 利用者であり、かつ同
      フォーラムにて話題にしました fckeditor にまつわるトラブルのため、
      fckeditor をインストールしていませんので、役に立つ情報は提示できないの
      ですが、ちょっと試してみては、という程度の意見を以下に。

      Quote from: Whitelinks at Oct 16, 2006, 03:43 PM
      リソースエディタで日本語表示のファイルをアップロードしますと、アップロード完了後に全ての画像が見えなくなります。ディレクトリの移動は可能なようですが、やはり画像としては何も表示されません。
      ....(中略)....
      リソースブラウザで日本語のファイルをアップロードまたは選択できるように修正するには.....(以下略)

      アップロードしているのはファイル名が「日本語」のファイルなのですか?

      もしそうなら、試しにファイル名をアルファベットに変えてやってみてはどうでしょう?

      期待に沿わない結果となった原因は何なのか、その一つが日本語名のファイル
      じゃないかと思っています。
        • 32325
        • 10 Posts
        こんにちは。
        ご返信ありがとうございます。

        こちらの説明が不十分だったようですみません。
        resource browserで日本語を利用したファイルを参照可能な状態にしたいと思っています。

        一度日本語のファイルを上げてしまいますとファイル名が文字化けしたファイルになってしまいます。
        しかも、mangerからも削除できないので、サーバに接続したあとにrmコマンドで削除しています。

        resource browserで日本語のファイル名が利用できるように修正ができればいいのですが、できない場合には上げてしまった文字化けファイルをmanager上で削除できればと思っています。

        社内でmodxを利用していますので、ファイル名には注意をお願いしているのですが、ついつい上げてしまうという事故(?)が後を絶たないので、何とか対策を講じたいと思っています。

        よろしくお願いします。
          Whitelinks:)
          • 6158
          • 224 Posts
          こんにちは。


          私が過去に関わった類似の問題を挙げれば、ファイル・アップロード時の日本
          語ファイル名に相当するのではないかと思います。
          # また違う?

          通常ファイル名に日本語を使わずアルファベットを使うのが普通になっている
          私は問題なかったのですが、その他の人は、ファイル名に理解しやすい日本語
          を使うのが当たり前なので、アップロードに支障をきたした事があります。

          その時は、ffftp のような操作方法を理解してもらえないソフトを使うのでは
          なく、IE を使って ftp サイトにファイルのドラッグ・ドロップで済ませると
          いう方法を取りました。


          実際、やった事が無い、試みた事が無い私より、適任の方がいるでしょう。
          どなたかご存じないですか?


          p.s.
          ----
          試しに、ファイル名をシステム側の文字コードに合わせてみてはどうでしょう?
            • 32325
            • 10 Posts
            ご回答ありがとうございます&ご返答がおそくなりましてすみません。

            その後いろいろと試してみました。

            ファイル名にアルファベットを使用するというのが一番安全なのですが、MODxを複数の方たちと管理しています。そのうち、ついつい忘れて日本語名称の画像を上げてしまうという方が後を絶ちませんでした。
            最初のうちはこちらで削除していたのですが、ちょくちょくと頻度が高いものでしたので、対応を考えておりました。

            こちらで取った対策は不十分ですが次のような対応を行いました。
            Resource Browserからのアップロードで文字化けをしないように文字コードの変換を行うように対応してみました。今のところファイル名だけは文字コード変換できるようになりました。ディレクトリの作成にはうまく対応できていないのが現状です。

            ファイル管理からも画像がアップロードできましたので、こちらにも文字コードを変換する方法を入れてみました。・・・やはり、こちらもディレクトリの作成で日本語を使用すると文字コード変換をうまくしてくれませんでした。

            対応としては不完全ですが、とりあえず現状への対策にはなりそうです。

            もう少し対応すれば、日本語を使用してもきちんとResource Browserでも動作してくれそうな気もしています。(個人的な淡い期待でしかありませんが・・・)

            いろいろとご回答いただきまして、ありがとうございました。
            もう少し頑張ってみます。

              Whitelinks:)
              • 6158
              • 224 Posts
              おはようございます。


              そちらでもいろいろ試されているようですね。お互い頑張りましょう。

              私も未解決な疑問を質問として投げ掛けています。他の方も仰 (おっしゃ) ら
              れていますが、modx 自体のノウハウが集積されていないのが現状ですので、備
              忘録としての意味合いを込めています。自分で質問して自分で応えるような。


              Quote from: Whitelinks at Nov 03, 2006, 03:08 PM
              Resource Browserからのアップロードで文字化けをしないように文字コードの変換を行うように対応してみました。今のところファイル名だけは文字コード変換できるようになりました。ディレクトリの作成にはうまく対応できていないのが現状です。
              ....(中略)....
              もう少し対応すれば、日本語を使用してもきちんとResource Browserでも動作してくれそうな気もしています。
              日本語表示、出来そうな気がするんですけどねぇ。所詮はブラウザの上で
              html 形式になるんだから。ソースを読む必要が出てくるのかもしれません。
              また、アップロード時に使うプロトコルの仕様もみる必要があるのかな?

              私もソースを読むお手伝いが出来たらいいのですが、自分の質問に関わるソー
              スすら読む暇がないのでなかなか進みません。

              p.s.
              ----
              『Mozilla Developer Center 』みたいに、ノウハウが多言語で提供できてたらいいのになぁと思います。
                • 32325
                • 10 Posts
                custarさん

                ご返信ありがとうございます。
                お返事が遅くなりましてすみません。


                そちらでもいろいろ試されているようですね。お互い頑張りましょう。

                ありがとうございます。
                ぜひ頑張ってまいりましょう。

                といいながらも、一時中断しています。
                仕事の合間にちょくちょくといじっていますが、なかなかまとまった時間が取れないので、どこまで調べたのかを直ぐにわすれてしまっています。備忘記録ということでは、何か分かったことだけでも投稿していく方がいいかもしれませんね(^^;)

                もう少しキチンとした形で対応できれば公表させていただければと思っています、が・・・道のりは長そうです。


                日本語表示、出来そうな気がするんですけどねぇ。所詮はブラウザの上で
                html 形式になるんだから。ソースを読む必要が出てくるのかもしれません。
                また、アップロード時に使うプロトコルの仕様もみる必要があるのかな?

                そうですね。結果的にはhtmlですので、きちんと文字コードさえ合えば日本語のファイルを利用することも可能だと思っています。ただ、ソースファイルのどこで何をやっているのかを完全には理解できないものでして・・・

                対応といいながらも、めぼしいところ見つけては少しずついじっているというのが現状です。

                また時間をみつけてはいじってみます。

                お返事ありがとうございました。
                  Whitelinks:)
                  • 33488
                  • 429 Posts
                  ちょっと実験 というか、別のアプローチしてみました。
                  似たような話があったので・・・。
                  日本語ファイルでなんとかシステム上に置こうとするといろいろと厄介な問題がありそうで、それならASCIIにしちゃえばいいじゃん という対処方法です。
                  とりあえず、リソースブラウザであればサムネイルが出るのでファイル名が変わっても画像を見て判断すればいいかなと。

                  日本語ファイルだった場合は、そのアップロード時の日付時刻にしちゃうという方法です。
                  RC2で試したのでソースはそのままアップというわけにはいきませんが、2箇所のソースを直しました。
                  manager/media/browser/..../php/Commands/FileUpload.phpとmanager/action/file.dynamic.phpのファイル名を取り出しているところです。
                  ...は面倒なので割愛です。
                  それぞれ、まったく同じ修正にはならないのですが、方法としては以下のようなロジックです。

                  if(ereg("[\x81-\xFE]",$filename))
                  {
                  	$tmp_name = explode(".",$filename);
                  	$filename = strftime("%Y%m%d%H%M%S").".".$tmp_name[1];
                  }
                  

                  最初のifが漢字コードかどうかの判定ですが、これでほんとにいいのかどうか怪しいかも・・。(適当な判定です)
                  とりあえず、1つでも漢字コードらしいものがあればファイル名は変更しちゃいます。
                    • 11697
                    • 17 Posts
                    ZeRoさん

                    はじめまして、私もリソースブラウザの問題に困っていたものです。
                    いろいろと試行錯誤していましたがうまくいかずあきらめていたのですが、
                    ZeRoさんの方法を参考にもういちどやってみようと思います。

                    どうもありがとうございました。
                      • 33488
                      • 429 Posts
                      0.9.2.2のソースを修正して、英数字変換のロジックを入れてみました。
                      ファイルは2つ、managerディレクトリの下に上書きしてください。

                      ファイル管理で全角文字のファイル名をアップすると、RENAMEしたファイル名もアップロード完了の下に表示します。
                      ここら辺は好き好きに修正してもらえばよいかと・・・file.dynamic.phpの方です。
                      MULTIBYTE(大文字小文字区別なしで) をキーワードで検索すると修正箇所が分かります。

                      ちなみに0.9.5RC2だとファイルの構成が変わってるようです。