<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE feed [
      <!ENTITY lt "&#38;#60;">
      <!ENTITY gt "&#62;">
      <!ENTITY amp "&#38;#38;">
      <!ENTITY apos "&#39;">
      <!ENTITY quot "&#34;">
      <!ENTITY nbsp "&#160;">
      <!ENTITY copy "&#169;">
]>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title type="text">ブログ</title>
    <subtitle type="text">XCL Labo-XCL の利用とカスタマイズに関する備忘録</subtitle>
    <updated>2026-05-18T01:02:31+09:00</updated>
    <id>https://xcl.masa-lab.net/modules/d3blog/index.php</id>
    <link rel="alternate" type="text/xhtml" hreflang="ja" href="https://xcl.masa-lab.net/" />
    <link rel="self" type="application/atom+xml" href="https://xcl.masa-lab.net/modules/d3blog/index.php?page=atom" />
    <rights>Copyright &copy; 2008-2018 by MASA Lab.</rights>
    <generator uri="https://xcl.masa-lab.net/">D3BLOG - XOOPS BLOG MODULE</generator>
    <entry>
        <title>20181220 で xupdate 管理画面が白紙に</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=246" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=246</id>
        <published>2019-04-05T22:00:00+09:00</published>
        <updated>2019-10-16T17:21:20+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">ローカル環境で xupdate を使って core をアップデートした後で本番環境にDBやファイルをアップロードし本番環境の管理画面から xupdate を呼び出したらリロードが何度も走ったうえで白紙画...</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div>ローカル環境で xupdate を使って core をアップデートした後で<br />本番環境にDBやファイルをアップロードし<br />本番環境の管理画面から xupdate を呼び出したら<br />リロードが何度も走ったうえで白紙画面が表示されてしまった<br /><br /><pre class="blogCode"><code>
/modules/xupdate/admin/index.php?action=UserPassColumnLenFix&amp;xoops_redirect=....
</code></pre><br /><br />色々調査したところ以下のような問題であった<br /><br />20181220 へのアップデートによって？ mainfile.php に以下のコードが挿入される<br /><pre class="blogCode"><code>
    // Alrady fixed length of users table pass column of this DB (Auto inserts by X-update)
    define(&#039;XCUBE_CORE_USER_PASS_LEN_FIXED&#039;, true);
</code></pre><br /><br />この値がセットされていないと xupdate の管理画面を表示した際に、この更新を行うためのリロードが行われる模様<br /><br />mainfile.php は動作環境によって異なるので、すでにこの対処が行われたDBで、このコードが追加されていない mainfile.php を使用すると<br />この更新処理を実行しようとして、失敗してしまうものと思われる<br /><br />本番環境の mainfile.php に、上記のコードを追加してあげれば治る</div>]]>
       </content>
    </entry>
    <entry>
        <title>xupdate CorePack アップデートで画面が真っ白</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=243" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=243</id>
        <published>2018-11-26T19:31:11+09:00</published>
        <updated>2019-01-10T20:24:23+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">xupdate で以下のアップデートをかけたら画面が真っ白にCorePack 20170328 → CorePack 20180208エラーログを見るとhtml/preload/debugOnlyAdmin.class.phpが読み込めてない模様フォルダを確認すると -rw-r----- と...</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div>xupdate で以下のアップデートをかけたら画面が真っ白に<br />CorePack 20170328 → CorePack 20180208<br /><br />エラーログを見ると<br />html/preload/debugOnlyAdmin.class.php<br />が読み込めてない模様<br /><br />フォルダを確認すると -rw-r----- というパーミッション<br />chmod go+r してあげてブラウザをリロード<br />無事に表示されるようになった<br /><br />おそらく開発環境の PHPは mod_php で動いているため<br />パーミッションが足りないのだろう<br />サーバ環境なら fastCGI なので問題は起きないと思われるが<br />他のファイルに合わせて -rw-r--r-- にしておくのが吉？</div>]]>
       </content>
    </entry>
    <entry>
        <title>TOKENがおかしい?!</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=217" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=217</id>
        <published>2014-06-12T22:00:00+09:00</published>
        <updated>2014-06-13T18:57:05+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">xoopsX で新たに作ったサイトで chrome や FireFox で新規登録しようとすると
照合用のワンタイム・チケットが見つかりませんでした。
ほとんどの場合は操作手順の関係でワンタイム・チケ...</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div>xoopsX で新たに作ったサイトで chrome や FireFox で新規登録しようとすると<br /><pre class="blogCode"><code>
照合用のワンタイム・チケットが見つかりませんでした。
ほとんどの場合は操作手順の関係でワンタイム・チケットが消費されただけですが、
CSRF攻撃を受けた可能性もあります
（この操作は本当にあなたが望んだ操作ですか？）　
操作内容をしっかり確認し、もう一度操作を行ってください。
</code></pre><br />と表示されて、登録ができないという状況が発生。<br />IEでも最初の一回目は同様のメッセージが出たり出なかったり...<br />新規登録に限らず、トークンがすべてだめのようだ。<br /><br />いろいろ試してみると、どうもこのサイトのために作ったテーマのせいらしいことが分かった。<br />標準のテーマなら新規登録できるのだが、テーマを変えると問題が起こる。<br />何か、大事なものを入れ忘れているのか？<br /><br />まずは状況確認...<br /><br />新規登録画面を出して、ソースを開き、フォームの変数 module.user.UserRegisterEditForm.TOKEN の value を確認する。<br />うーむ、値は入っているようだ。<br /><br />では次に、その時のセッション変数の値を確認するために phpMyAdmin で xxxxx_session テーブルの中身を開き、sess_data の module.user.UserRegisterEditForm.TOKEN の値を見る。<br /><br />こちらにも値は入っているが、フォーム変数に設定されている値とは違う値になっている！！！？？？<br /><br />どういうことだ？<br />この時点でかなりパニック<br /><br />うーーーー。<br />とにかくテーマに問題があるのだから、theme.html を直すしかない...<br />ということで、コードをどんどん削っていく。<br />いくら削っても変わらない...<br />最後の最後↓を削ったらビンゴ！<br /><br /><pre class="blogCode"><code>
&lt;link rel=&quot;SHORTCUT ICON&quot; href=&quot;&quot; &gt;
&lt;link ref=&quot;icon&quot; href=&quot;&quot; type=&quot;image/ico&quot; /&gt;
</code></pre><br /><br />うーん<br />どういうことだろう？<br />href="" なので、該当のURL に対して2度アクセスしてしまったということだろうか？<br />理屈からするとあり得そう。<br />1度目にアクセスしたときに TOKENが作られて FORM に埋め込まれる。<br />href="" でもう一度リクエストがきて、再度 TOKENが作られて、その値でDBの値が上書きされるためにTOKENの値がミスマッチになるということだ。<br /><br />chrome のネットワークモニターで見ても2度目のアクセスは出てこないのが気になるが、<br />favicon のアクセスは通常のアクセスとは別に行われているようで、それは link 要素で指定した場合でもそうなのかもしれない。<br />fiddler あたりで確認すればわかるのだろうが、理屈があっているので良いことにする。<br /><br />とにかくこれにて一件落着。勉強になりました。<br /><br />それにしてもデザイナーさん！<br />こういう技術力を試すような罠を入れておくのはお願いだからやめてください<(_ _)>0</div>]]>
       </content>
    </entry>
    <entry>
        <title>altsys? テンプレート編集で勝手にエスケープ文字列が入ってしまう！</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=208" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=208</id>
        <published>2014-05-05T22:40:00+09:00</published>
        <updated>2014-06-09T13:43:05+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">
altsys でテンプレートの編集をしているときに、なぜか勝手にエスケープ文字列が付加されていたことがあった。
</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div><p>
altsys でテンプレートの編集をしているときに、なぜか勝手にエスケープ文字列が付加されていたことがあった。
</p>
<pre class="blogCode"><code>
&quot;&#039;\
</code></pre>
<p>
チケットタイムアウトしてしまった時に、そのまま repost をすると、上記の文字の前に \ が付加されてしまうようだ。<br />
そのために、テンプレートが正しく動作しなくなることがあるので注意！
</p></div>]]>
       </content>
    </entry>
    <entry>
        <title>コメントのネスト表示がカスタマイズできない？</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=185" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=185</id>
        <published>2012-11-18T22:10:00+09:00</published>
        <updated>2012-11-20T10:26:56+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">
XCL 2.2 で、ブログなどのコメント表示欄をカスタマイズしてみたときに、
うまくカスタマイズできない所があって悩んでしまった...
</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div><p>
XCL 2.2 で、ブログなどのコメント表示欄をカスタマイズしてみたときに、
うまくカスタマイズできない所があって悩んでしまった...
</p>
<p>
コメント表示欄は、legacy_comments_xxxx.html あたりにある。<br />
altsys のテンプレート管理から、互換モジュールを開く。<br />
</p>

<p>
まずは、コメント表示欄のコメントの登録日時を日付だけの表示に変えるために、legacy_comment.html を開き
</p>

<pre class="blogCode"><code>
&lt;{$comment.date_posted}&gt;
</code></pre>
<p>
を
</p>
<pre class="blogCode"><code>
&lt;{$comment.date_posted|date_format:&quot;%x&quot;}&gt;
</code></pre>
<p>
に変えてみた。<br />
これで、ほとんどのコメント表示は直ったのだが、なぜかネスト表示にしたときの返信だけは治らなかった。<br />
</p>

<p>
色々悩んだのだが、結論から言うと、legacy_comments_nest.html の
</p>
<pre class="blogCode"><code>
&lt;{include file=&quot;db:system_comment.html&quot; comment=$reply}&gt;
</code></pre>
<p>を
</p>
<pre class="blogCode"><code>
&lt;{include file=&quot;db:legacy_comment.html&quot; comment=$reply}&gt;
</code></pre>
<p>
に変えることで、正しく表示することができた。
</p>

<h3>キャッシュに注意</h3>
<p>
この試行錯誤をしているときに、いくら変更してもうまく動作しないことがあった。<br />
もしかしてキャッシュされている？<br />
ということで、altsysの「高度なテンプレート管理」で、「コンパイル済テンプレートキャッシュ」の削除を行うことで、変更を反映させることができた。<br />
</p></div>]]>
       </content>
    </entry>
    <entry>
        <title>Smarty にクロスサイトスクリプティングの脆弱性</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=183" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=183</id>
        <published>2012-10-17T12:57:46+09:00</published>
        <updated>2012-10-17T15:34:36+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">Smarty にクロスサイトスクリプティングの脆弱性が見つかった- Smarty 3.1.11 およびそれ以前- Smarty 2.6.26 およびそれ以前JPCERT コーディネーションセンター Weekly Report</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div>Smarty にクロスサイトスクリプティングの脆弱性が見つかった<br /><br />- Smarty 3.1.11 およびそれ以前<br />- Smarty 2.6.26 およびそれ以前<br /><br /><a href="http://www.jpcert.or.jp/wr/2012/wr124001.html#5" target="_blank">JPCERT コーディネーションセンター Weekly Report</a><br />XCL に使われている Smarty は xoops_trust_path/libs/smarty にあり、<br />2.2.1 同梱の Smarty.class.php を見ると<br /><pre class="blogCode"><code>
var $_version = &#039;2.6.26&#039;
</code></pre><br />となっていた。<br /><br />更新が必要だろう。<br /><br />Smarty 2.6.27 (Sep 25th, 2012) のダウンロードは↓から<br /><a href="http://www.smarty.net/download" target="_blank">Download | Smarty</a><br /><br />■XCLへの導入<br /><br />上記でダウンロードしたファイル(.zip版)を一時的に展開する。<br /><br />% unzip Smarty-2.6.27.zip<br />% (cd Smarty-2.6.27/libs/; tar -cf - .) | (cd xoops_trust_path/libs/smarty; tar -xf -)<br /><br />上書きでインストールしないといけないのは、XCL がプラグインを追加しているため。<br /><br /><br /><span style="font-size: large;">関連記事</span><br /><a href="http://xcl.masa-lab.net/modules/d3blog/details.php?bid=184" target="_blank">管理画面トップに Smartyのバージョンを表示する</a></div>]]>
       </content>
    </entry>
    <entry>
        <title>xcl 2.2.0 コメントの管理のjavascript</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=180" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=180</id>
        <published>2012-06-03T22:40:00+09:00</published>
        <updated>2012-06-21T10:50:24+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">多分2.2.1 のβではすでに直っていると思うが...allbox チェックボックスの javascript
onclick=&quot;with(document.smilesform){for(...
のsmilesform は commentlistform でなければいけない修正ファイルの場所はmod...</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div>多分2.2.1 のβではすでに直っていると思うが...<br /><br />allbox チェックボックスの javascript<br /><pre class="blogCode"><code>
onclick=&quot;with(document.smilesform){for(...
</code></pre><br />のsmilesform は commentlistform でなければいけない<br /><br />修正ファイルの場所は<br />modules/legacy/admin/templates/comment_list.html</div>]]>
       </content>
    </entry>
    <entry>
        <title>XCL2.2 イメージマネジャー：イメージの一覧の不具合修正</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=174" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=174</id>
        <published>2011-11-06T22:30:00+09:00</published>
        <updated>2011-11-08T10:43:27+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">XCL2.2 になって一つだけ困っていたことがあった。イメージマネジャーでイメージの一覧を出したときに、カテゴリに関係なくすべてのイメージが表示されてしまうのだ。これはかなり困...</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div>XCL2.2 になって一つだけ困っていたことがあった。<br />イメージマネジャーでイメージの一覧を出したときに、カテゴリに関係なくすべてのイメージが表示されてしまうのだ。<br /><br />これはかなり困るのだが、「そのうち XCL2.2.1 が出たときに直ってるさ」などと放置していた。<br /><br />とはいえなかなか2.2.1 が出ない。<br />多分sourceforge上では直っているのだろうが、確認するのが面倒くさい...<br />ちょっと気が向いたので、直してみることにした。(ってそのほうが面倒なのではないか？)<br />ふーむ。<br />admin の一覧関係はクラス継承されて整理されているのだね。<br />どうやら一覧のフィルタクラス部分に問題があるようだ。<br /><br />modules/legacy/admin/forms/ImageFilterForm.class.php<br />の66行目の以下の行<br /><pre class="blogCode"><code>
$this-&gt;mNavi-&gt;addExtra(&#039;imgcat_id&#039;, xoops_getrequest(&#039;imgcat_id&#039;));
</code></pre><br />の下に一行を追加した<br /><pre class="blogCode"><code>
$this-&gt;_mCriteria-&gt;add(new Criteria(&#039;imgcat_id&#039;,xoops_getrequest(&#039;imgcat_id&#039;)));
</code></pre><br /><br />これで無事、選択したカテゴリのイメージだけが表示されるようになった。</div>]]>
       </content>
    </entry>
    <entry>
        <title>logcounterX [2.72] でワーニング?</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=123" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=123</id>
        <published>2010-04-13T23:10:00+09:00</published>
        <updated>2010-04-15T17:02:56+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">logcounterX で次のようなワーニングが出たWarning: mb_detect_encoding() [function.mb-detect-encoding]: Illegal argument in /.../modules/logcounterx/include/query_word.php on line 98確認しようと思ったら出なくなってしまっ...</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div>logcounterX で次のようなワーニングが出た<br /><br />Warning: mb_detect_encoding() [function.mb-detect-encoding]: Illegal argument in /.../modules/logcounterx/include/query_word.php on line 98<br /><br />確認しようと思ったら出なくなってしまった。<br />どうも検索サイト＆キーワードとの関連で出たもののようだが...<br /><br />再現できなくては調査もできないし、気にしないと言うことで...</div>]]>
       </content>
    </entry>
    <entry>
        <title>XCL 2.2 Alpha1 のプロフィールモジュール</title>
        <link rel="alternate" type="text/xhtml" href="https://xcl.masa-lab.net/modules/d3blog/details.php?bid=128" />
        <id>https://xcl.masa-lab.net/modules/d3blog/details.php?bid=128</id>
        <published>2010-04-13T13:54:43+09:00</published>
        <updated>2010-04-16T19:57:04+09:00</updated>
        <category term="その他" label="その他" />
        <author>
            <name>masa</name>
        </author>
        <summary type="html" xml:base="https://xcl.masa-lab.net/" xml:lang="ja">管理画面でプロフィールモジュールのプロフィール定義リストを開くと、次のようなワーニングがたくさん表示される。Notice [PHP]: Constant _MD_PROFILE_ERROR_CONTENT_IS_NOT_FOUND already defined in file modu...</summary>
       <content type="html" xml:lang="ja" xml:base="https://xcl.masa-lab.net/">
<![CDATA[<div>管理画面でプロフィールモジュールのプロフィール定義リストを開くと、次のようなワーニングがたくさん表示される。<br /><br />Notice [PHP]: Constant _MD_PROFILE_ERROR_CONTENT_IS_NOT_FOUND already defined in file modules/profile/language/ja_utf8/main.php line 46<br />Notice...<br /><br />2重にインクルードしているのかな...<br />まぁ気にしないでおこう。</div>]]>
       </content>
    </entry>
</feed>