We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 6115
    • 10 Posts
    こんばんは、質問させてください。
    MODxでつくる!最強のCMSサイトを参考にXAMPP1.6.6にて
    ローカル環境にてテストしています。

    色々検証してみたのですが、以下のような問題が出てきました。

    ①フレンドリーURLでない時
    Modx設定にてキャッシュデフォルトをNoにして
    ドキュメントの作成でDittoに記事を追加するとページナビゲーションが効かなくなります。
    後、記事に付けたタグをクリックしても記事の絞込みが出来なくなります。

    この後に、Modx設定にてキャッシュデフォルトをOnに戻しても
    上記の症状は残ったままになります。
    インストール直後のキャッシュデフォルトOnだと問題なく出来ます。
    キャッシュデフォルトをNoにするのはやってはいけないことなのでしょうか?

    フレンドリーURLの時は問題がないようです。
    以前にテストしていた環境では、ページナビゲーションは問題なく
    タグの絞込みが出来ない状態でしたが、再度インストールしてテストしてみると
    問題は出ませんでした。

    ②ロケールに基づく日付が正常に表示されないのWeb記事を参考にして5つのファイルを
    書き換えたのですが、文字化けが直りません。

    サーバー側でロケール設定が有効な場合とありますが、XAMPPの場合は
    どこか設定が必要なのでしょうか?

    ③ドキュメント作成の公開日時のカレンダーから入力出来ない
    カレンダーのアイコンをクリックしてカレンダーから日付を選択しても
    公開日時に反映されません。(何も入力されていない状態です)

    FirefoxのFireBugを見てみると、calendar.html 81 行目に「obj_caller is not defined」と
    エラーが出ています。

    ④インストールした直後にFireBugにてエラーが発生しています。
    mootools.js 2 行目
    document.getElementById is not a function

    index.php 34 行目
    top.mainMenu.updateMail is not a function

    のエラーが1つか2つ必ずエラーが出るのですがこれは運用していく上で
    問題はないのでしょうか?

    質問ばかりですいませんが、よろしくお願いします。


    Modx v0961p2
    XAMPP v1.6.6
    PHP v5.2.5
    Apache v2.2.8
    MySQL v5.0.51
    phpMyAdmin v2.11.4

    mbstring.detect_order no value no value
    mbstring.encoding_translation On On
    mbstring.func_overload 0 0
    mbstring.http_input auto auto
    mbstring.http_output pass pass
    mbstring.internal_encoding UTF-8 UTF-8
    mbstring.language Japanese Japanese
    mbstring.strict_detection Off Off
    mbstring.substitute_character no value

    データベースは utf8_general_ci で作成しています。
      • 36592
      • 970 Posts
      XAMPPはあまり使ったことがありませんが、どなたからも回答が無いようなので...
      違ってたら、どなたか遠慮なく突っ込んで下さい~
      Quote from: cube at Mar 25, 2008, 11:28 AM

      ①フレンドリーURLでない時
      キャッシュデフォルトをNoにするのはやってはいけないことなのでしょうか?
      キャッシュデフォルトの設定は、新しくドキュメントを作成する時のデフォルト設定値と理解しています。例えば、NewsPublisherでブログをフロントエンドからポストするような場合に、キャッシュデフォルトをOnにしているとそのドキュメントのキャッシュがOnになるというような感じです。

      キャッシュのOn/Offは、基本的には各ドキュメントに設定されていますので、キャッシュデフォルトの設定が動作に影響するってことは無いような気がしますが。

      具体的には、ドキュメントのキャッシュの設定やスニペットのキャッシュ/非キャッシュ型式等を調べないと、原因については何とも言えませんね。

      ②ロケールに基づく日付が正常に表示されないのWeb記事を参考にして5つのファイルを
      書き換えたのですが、文字化けが直りません。
      文字化けしているのは日付なんでしょうか?
      もう1つ「config.inc.php」のデータベースコネクションのところの設定はされましたか?
      (この設定を入れてから入力した日本語から文字化けしなくなると思います。)

      ③ドキュメント作成の公開日時のカレンダーから入力出来ない
      これはFireFoxではできないみたいですね~
      IE6(試したのはSleipnirですが)では動くようですが。
      気づいてましたが、マネージャ画面では直接入力できるので気にしてませんでした。

      ④インストールした直後にFireBugにてエラーが発生しています。
      これは運用していく上で問題はないのでしょうか?
      これも同じく発生していますね~
      どの部分に影響があるのかさっぱり分かりませんが、
      特別困った経験はありませんです...

      MySQL v5.0.51
      このバージョンのMySQLはバグがあって、Wayfinder等でメニューの表示順がめちゃくちゃになるようです。
      古いバージョンかバグフィックスされたバージョンを使いなさいと、このフォーラムの英語圏の部分で叫ばれています。

      あぁ...何も解決してませんね~ ゴメンナサイ。 embarrassed
        • 6115
        • 10 Posts
        こんにちは、レスありがとうございます。

        ①フレンドリーURLでない時
        キャッシュデフォルトをNoにするのはやってはいけないことなのでしょうか?


        XAMPP1.6.6aにバージョアップしてもう一度やってみたところ
        全然問題なかったです・・・。
        自分の設定がおかしかったようです、恥ずかしい・・・。


        文字化けしているのは日付なんでしょうか?


        マネージャ画面の「イベントログ」の日付が文字化けしている
        マネージャにログイン中「サンプルコンテンツ」の「Jot」がはき出す日付が文字化けする

        この2つは間違いなく文字化けしています。
        □□ 3□□ 27, 2008
        のように□の部分が菱型の中に?の文字が入っている感じに見えます。

        マネージャにログイン中「サンプルコンテンツ」の「Ditto」「Reflect」がはき出す日付が文字化けする

        これも文字化けしていると思うのですが、まだ勉強不足なので間違っているかもしれません。
        ReflectでArchivesを出してみたのですが
        2008
        3□□
        のように文字化けしています。

        後、Dittoなんですが文字化けと関係ないかもしれませんが・・・。
        MODxでつくる!最強のCMSサイトのP164の設定で
        &dateFormat=`%Y.%m.%d %R`
        とあるのですが、2008.03.21 というように年月日は出るのですが
        時間を出力してくれません。
        &dateFormat=`%Y.%m.%d %H:%M`
        で2008.03.21 23:45 と時間を出してくれているみたいですが、これで大丈夫でしょうか?

        次に日付を日本語にしたかったので
        http://d.hatena.ne.jp/m-mitsuki/20070905
        を参考に
        &dateFormat=`%Y年%m月%d日 %H:%M`
        と書いてみたのですが
        2008年03月%d日 23:45
        と %d の出力がうまく出力されてくれません。



        もう1つ「config.inc.php」のデータベースコネクションのところの設定はされましたか?


        これは、utf8に設定しています。

        (この設定を入れてから入力した日本語から文字化けしなくなると思います。)


        ということは、この設定をした後から、文字化けがなくなると考えて良いですか?
        今まで文字化けしていたものは解消されないということですよね。

        XAMPP1.6.6aバージョアップ後に新規に入れ直したサンプルのMini-Blogsに新規にコメントをすると
        やはり、□□ 3□□ 27, 2008 のように文字化けしてしまいます。



        これはFireFoxではできないみたいですね~


        本当ですね。
        IEとOperaで試してみましたが、ちゃんと出来ました。
        ありがとうございました。

        特別困った経験はありませんです...


        問題なさそうで安心しました。

        このバージョンのMySQLはバグがあって、Wayfinder等でメニューの表示順がめちゃくちゃになるようです。


        不安になったので、XAMPP1.6.6aにバージョアップしました。
        情報ありがとうございます。



        http://www.liolion.info/LULU-LOG/T/200706/09_2041.html
        http://www.bodenplatte.jp/osscms/xamppwindows/xampp15.html
        XAMPPのセットアップは上記のホームページを参考にさせて頂いているのですが
        mysql¥bin¥my.cnfで
        default-character-set=sjis
        になっているのは、何か理由があるのでしょうか?
        default-character-set=utf8
        でもかまわないのでしょうか?

        疑問だらけで、少し挫折しかかっています。
        どうぞ、よろしくお願いします。
          • 36592
          • 970 Posts

          マネージャ画面の「イベントログ」の日付が文字化けしている
          マネージャにログイン中「サンプルコンテンツ」の「Jot」がはき出す日付が文字化けする
          マネージャにログイン中「サンプルコンテンツ」の「Ditto」「Reflect」がはき出す日付が文字化けする
          ReflectでArchivesを出してみたのですが
           2008
           3□□
          のように文字化けしています。
          日付が文字化けなんですね~ やっぱ、ロケール関係のような気がします。
          マネージャログイン中だけ化けるとなると、例の5つのlangファイルのロケール設定のうち、
          /manager ディレクトリ配下のものと、QuickEditのものが怪しいですね。
          どんな風に書いていますか?


          &dateFormat=`%Y.%m.%d %R`
          とあるのですが、2008.03.21 というように年月日は出るのですが
          時間を出力してくれません。
          &dateFormat=`%Y.%m.%d %H:%M`
          で2008.03.21 23:45 と時間を出してくれているみたいですが、これで大丈夫でしょうか?
          それで大丈夫ですよ。%Rが出ないのはますますロケール設定くさいですね。


          &dateFormat=`%Y年%m月%d日 %H:%M`
          と書いてみたのですが
          2008年03月%d日 23:45
          と %d の出力がうまく出力されてくれません。
          日本語文字が密着すると、%dが認識されないのかなぁ~ 文字コードの問題とか...?
          %dの前に半角スペースを入れたら出たりして... そんなわけないか。


          (この設定を入れてから入力した日本語から文字化けしなくなると思います。)

          ということは、この設定をした後から、文字化けがなくなると考えて良いですか?
          今まで文字化けしていたものは解消されないということですよね。
          これは、日付のところの文字化けとは関係ありません。
          コンテンツ等に日本語を入れている場合の話です。


          http://www.liolion.info/LULU-LOG/T/200706/09_2041.html
          http://www.bodenplatte.jp/osscms/xamppwindows/xampp15.html
          XAMPPのセットアップは上記のホームページを参考にさせて頂いているのですが
          mysql¥bin¥my.cnfで
          default-character-set=sjis
          になっているのは、何か理由があるのでしょうか?
          default-character-set=utf8
          でもかまわないのでしょうか?
          ここは上記URLのページの作者のMEGUさんに譲ります。 tongue
          (私には全然わかりません...)
            • 6115
            • 10 Posts
            こんばんは。

            日付が文字化けなんですね~ やっぱ、ロケール関係のような気がします。
            マネージャログイン中だけ化けるとなると、例の5つのlangファイルのロケール設定のうち、
            /manager ディレクトリ配下のものと、QuickEditのものが怪しいですね。


            すいません、文章をコピペしてしまったので間違えました。
            マネージャログイン中だけではなくて、ログイン中でもログアウト中でも文字化けしています。
            申し訳ありません。

            後、manager/includes/document.parser.class.inc.php の18行目付近も修正しています。

            念のため、DittoとReflectをv2.1にバージョンアップしてみましたが、変わりませんでした。


            どんな風に書いていますか?


            [!Ditto? &startID=`56` &summarize=`5` $displayArchive=`0` &tpl=`entrylist` &dateFormat=`%Y年%m月%d日 %H:%M`!]
            [!Reflect? &dittoSnippetParameters=`parents:56`!]

            こんな感じですが、問題ありますでしょうか?


            %dの前に半角スペースを入れたら出たりして... そんなわけないか。


            うまく出力されました。 smiley
            http://modxcms.com/forums/index.php/topic,14686.0.html
            を見てみると、スペース入れたら直ると書いてありますね。
            Ditto2.1のditto.class.inc.phpではstrftimeでUTF-8を呼んでる箇所は
            なかったので、デフォルトでv2.0.2と同じ文字化けの状態になっています。
            でも、半角スペースを入れずに出したいところです。


            これは、日付のところの文字化けとは関係ありません。
            コンテンツ等に日本語を入れている場合の話です。


            なるほど、こちらではコンテンツもphpMyAdmin内でも文字化けを
            していませんので問題はないということで大丈夫でしょうか?
              • 19033
              • 892 Posts
              こんにちは。
              うまく出力されました。 Smiley
              http://modxcms.com/forums/index.php/topic,14686.0.html
              を見てみると、スペース入れたら直ると書いてありますね。
              Ditto2.1のditto.class.inc.phpではstrftimeでUTF-8を呼んでる箇所は
              なかったので、デフォルトでv2.0.2と同じ文字化けの状態になっています。
              でも、半角スペースを入れずに出したいところです。

              ditto2.1系ならスペースを入れなくても大丈夫ですよ。
              http://modxcms.com/forums/index.php/topic,14686.msg104468.html#msg104468
              サンプル http://www.liolion.info/modx/blog/
                • 36592
                • 970 Posts

                マネージャログイン中だけではなくて、ログイン中でもログアウト中でも文字化けしています。
                だとすると、文字コードの問題という線の方が濃厚かも...
                ブラウザ側で強制的に文字コードをShift_JISやEUCに変えてみて、正しい表示になることはあるでしょうか?

                後、manager/includes/document.parser.class.inc.php の18行目付近も修正しています。
                これって何でしたっけ?

                %dの前に半角スペースを入れたら出たりして... そんなわけないか。

                うまく出力されました。 smiley
                あは...言ってみるものですね。 grin
                MEGUさんからDitto2.1では修正されているとのコメントが出てますが如何ですか?

                こちらではコンテンツもphpMyAdmin内でも文字化けを
                していませんので問題はないということで大丈夫でしょうか?
                でしたら大丈夫だと思います。
                  • 6115
                  • 10 Posts
                  こんにちは。

                  ditto2.1系ならスペースを入れなくても大丈夫ですよ。


                  うーん、どうしても%Y年%m月%d日の%dの部分が出てくれません。 huh
                  試しに、%Y年%m月%m日とか%Y年%m月%Y日にしてみても同じでした。
                  他の部分は2008年03月%d日というようにキチンと出力してくれるんですが・・・。

                  http://www.liolion.info/modx/resource/ditto2.html
                  を参考にさせて頂いて

                  japanese-utf8.inc.phpは、&language=`japanese-utf8`に修正
                  Ditto2.1のスニペットを
                  $language = (isset($language))? $language : "english";から
                  $language = (isset($language))? $language : "japanese-utf8";
                  に修正しています。

                  だとすると、文字コードの問題という線の方が濃厚かも...
                  ブラウザ側で強制的に文字コードをShift_JISやEUCに変えてみて、正しい表示になることはあるでしょうか?


                  Shift_JISに変えてみると、文字化けの部分がキチンと表示されました。 smiley

                  http://www.arakin.dyndns.org/hp_utf8xampp.php
                  を参考にさせて頂いて
                  色々なところをUTF8にしてみたのですが
                  どれもうまくいきませんでした。
                  mbstring関係が一番怪しいのでしょうか?

                  関係ないかもしれませんが
                  XAMPPのトップページもShift_JISで表示されています。
                  例えばXAMPPメニューのセキュリティをクリックすると、新しいウィンドウで
                  セキュリティ項目が表示されますが、文字コードがUTF8になっていて文字化けしています。
                  Shift_JISに変更すると、キチンと表示されます。

                  mbstringは今現在下記のようになっています。

                  mbstring.detect_order auto auto
                  mbstring.encoding_translation On On
                  mbstring.func_overload 0 0
                  mbstring.http_input auto auto
                  mbstring.http_output UTF-8 UTF-8
                  mbstring.internal_encoding UTF-8 UTF-8
                  mbstring.language Japanese Japanese
                  mbstring.strict_detection Off Off
                  mbstring.substitute_character no value no value

                  その他のhttpd.confやconfig.inc.php、my.cnfは
                  http://www.liolion.info/LULU-LOG/T/200706/09_2041.html
                  http://www.arakin.dyndns.org/hp_utf8xampp.php
                  の2つ設定を組み合わせた感じになっています。


                  これって何でしたっけ?


                  http://www.liolion.info/modx/howtomodx/aboutmodx096.html
                  のロケールに基づく日付が正常に表示されないのところです。


                  MEGUさんからDitto2.1では修正されているとのコメントが出てますが如何ですか?


                  やっぱり出てくれませんでした。 huh
                    • 36592
                    • 970 Posts
                    確認ですが...

                    MEGUさんのサイトのここに書かれている「 ロケールに基づく日付が正常に表示されない…」の回避策の1つ目はちゃんと設定していますか?
                    この設定
                    setlocale( LC_ALL, "ja_JP.UTF-8");

                    の部分ですが...

                    Windowsはデフォルト文字コードがShift_JISなんで、setlocaleの設定がUTF-8になってない(効いていない)気がします。
                      • 33488
                      • 429 Posts
                      Windowsだとja_JPじゃなくて、Japaneseなんですけど SJISしか出ないみたいですねぇ
                      あと、半角空白の件ですが、これはstrftime自体の問題なような気がします。
                      ロケール関係ないっすね。
                      半角じゃなくてもいいですが、どうも日本語が入ってるいるとちゃんと変数(%?)が解析できないみたいな症状に思えます。
                      ちなみに、XAMPP(WIN)のPHP5.2.5でテストソース作ってみて確認してみたんですが・・。