Drupal6 + php5で日本語名のファイルがコンテンツに添付できない問題

先日、お客様の前でDrupalのデモをしたところ日本語名のファイルがアップロードできない、、、すると「日本語だめなんですか? 写真とか全部日本語のファイル名で管理しているので、半角英数に変更するのは面倒なのでなんとかなりません?」といわれてしまいました。確か以前のバージョンでは日本語ファイル名も問題なくアップロードできていたと思うのですが、、、

基本的にwebアクセスするファイル名は半角英数のみを使用することは技術的な知識がある人からすると当たり前なのですが、一般ユーザーからすると「なんで日本語ファイル名じゃだめなの?」と感じるのも極々当たり前なのです。それでちょっと調べますということになったのですが、これが案外時間がかかってしまいました。

どうやら原因はphp5のバグらしく、basename()でパスに日本語が含まれていると正しく動かないようです。

Zen Cart ポイントモジュール 0.8.2

Zen Cart ポイントモジュール の以下のバグを修正しました。

  • 管理画面側の言語ファイルの一部が読み込まれなくなる
  • 顧客ポイントのDB参照時にレコードがないためエラーになる
  • 管理画面の商品毎ポイント還元率設定でphpコードが表示される
  • 管理画面の顧客毎ポイント還元率設定でphpコードが表示される
  • 管理画面の顧客グループ毎ポイント還元率設定でphpコードが表示される

最新バージョンは zencart_point_0-8-2.zip になります。
すでに旧バージョンをインストールされた方もすべて上書きでアップデートできます。
一応、0-8-1から差分ファイル zencat_point_patch_0-8-1_to_0-8-2.zip もダウンロード可能です。

ZenCart.JPコミュニティー掲示板でご報告いただいたkimonoさん、清原さんありがとうございました。

Zen Cart ポイントモジュール修正

zen Cart JP コミュニティー掲示板でjirumieさんから報告いただいた、ポイント管理画面で顧客情報の表示がおかしい件を修正しました。
すでにインストール済みのかたは、zencart_point_patch_0-8_to_0-8-1.zipをダウンロードして解凍後ファイルを上書きしてください。

※2008/08/04 追記
Zen Cart JP コミュニティー掲示板でkimonoさん。清原さんから報告いただいた、バグを修正した最新版を公開しました、Zen Cart ポイントモジュール 0.8.2からダウンロードしてください。

Zen Cart ポイントモジュール

Zen Cart ポイントモジュールつくりました。
Zen Cart1.2の頃にも一度作ったことがありましたが、今回Zen Cart1.3のアーキテクチャに合わせて全く新しく書きました。
対応バージョンはzen-cart-v1.3.0.2-l10n-jp-3です。zen-cart-v1.3.0.2-l10n-jp-xでも動くとは思いますがセキュリティの問題もあるのでzen-cart-v1.3.0.2-l10n-jp-3にアップデートすることをおすすめします。

おもな機能としては、

  • 購入ポイント発行
  • ポイント還元率設定
  • 商品毎のポイント還元率設定
  • 顧客毎のポイント還元率設定
  • 顧客グループ毎のポイント還元率設定
  • 会員登録時ポイントプレゼント発行
  • ポイントによる代金支払
  • マイページにポイント残額を表示
  • ポイント履歴管理
  • 手動によるポイント発行
  • 注文管理とポイント履歴管理の連動
  • 他の割引モジュールとの併用に対応
  • JavaScriptのMVCフレームワーク

    ここ最近Ajaxを取り入れた案件が増えています。 というか必ずJavaScriptを書いてるかも。。。
    コードのメンテナンス性とかも考慮してMVC風に書くのだけど、毎回以前書いた似たような機能のものをコピペしてきて、、、みたいな感じになるので何かもっと効率よくできるようにクライアントサイドのフレームワークはないものかと探してみたらありました。

    JavaScriptMVC
    http://javascriptmvc.com/index.html

    おーすごい! よくできてますよこれ
    デバッグ機能もついていてユニットテストも出来ます。 
    それにテンプレートを使ったHTMLの出力も出来るみたい。
    ここまで高機能だと気になるのが実行速度。
    Hello Worldを表示するチュートリアルを実行してみたらそれだけで約1.5秒もかかる、、、やっぱり遅い。
    と思ったらソースコードを要約して高速化する機能までついてました。
    それを使うとロードされるjsファイルの数も23からたったの3に! 実行時間も約0.2秒に短縮されました。

    いいのがなかったら作ってみようかとも考えていましたがこれは使えそうです。
    サーバーサイドのMVCなフレームワーク使ったことあって、JavaScriptが書ける人であれば学習コストもそんなにかからないと思います。

    zen-cart-v1.3.0.2-l10n-jp-3で管理画面にログインできない問題

    zen-cart-v1.3.0.2-l10n-jp-3でphp5とMySQL5に対応しましたが、php5.2以上で管理画面にログインできない問題が発生します。 これは、session_set_save_handler()の挙動が変更され、セッションをDBに書き込む際にデータベース接続オブジェクトが破棄されてしまうためです。
    一応修正パッチを作成してzen-cart.jpには送ってあるのですが正式にリリースされるのはもう少し先になるようです。
    で、取り急ぎ困っている方のために当ページからダウンロードできるようにしました。

    JQueryのPluginsダウンロードサイト

    最近、案件でAjaxを利用した実装をする機会が増えていて、Ajaxフレームワークやライブラリの中でもJQueryを一番よく使います。
    で、昨日JQueryのサイトをうろうろしていて気がついたのですが、JQueryのPluginsダウンロードサイトってDrupalで運営されてますね。 いつからだろ?昨日まで気がつかなかったです。

    Plugins | jQuery Plugins
    http://plugins.jquery.com/

    「Project」という拡張モジュールを利用しているようです。
    これうちでも使ってみたいのですがDrupal6用のモジュールのリリースがまだなんですよね。

    WEBサイトリニューアル中です。

    Drupal6で弊社WEBサイトのリニューアルをはじめました。
    まだ未完成なところがおおくありますが、CMSをつかってどのようにWEBサイトが構築されていくか、その過程も見ていただけるのではないかとおもいリアルタイムの状態を公開することにしました。