« thinkfree | メイン | yamareco.com ドメイン取得 »

2006年12月28日

Scuttleのタグ文字化け

はてなブックマークのようなタグつきで、ブックマークレットが使える
ブックマーク「Scuttle」を最近インストールしました。

インストールしたバージョンは0.7.2(執筆時点で最新)ですが、
タグが11文字以上になると文字化けが発生しました。

Googleで調べたところ、
熱血!MULTI web: 「Scuttle」の文字化け対策のまとめ
http://nekketu.com/mt/archives/2006/12/06_150932.html
というページがあったのですが、根本解決していないようなので、メモを残しておきます。


ソースコードをざっと見た感じでは文字数を制限してなさそうだったので、データベース側を見たところタグの上限サイズが32バイトになってました。

↓Wikipediaの解説を見ると
http://ja.wikipedia.org/wiki/UTF-8

UTF-8は日本語が3バイトになるようなので、10文字目までは正しく入って
11文字目が2バイトしか格納されずに<?>みたいな文字に文字化けするんですかね。


■対処
MySQLのscuttleデータベース中のsc_tagsテーブルにある、
tagフィールドをvarchar(32)からvarchar(64)とかに変更する。

# mysql
> USE scuttle
> ALTER TABLE sc_tags CHANGE tag tag VARCHAR( 64 )

完全に文字数制限を外すならtextとかにすればいいですが、
そこまでやらなくてもそんな長いタグは書かんだろうということで。


ちなみにインストール方法はphpspot開発日誌に書いてある通りでいけました。
http://phpspot.org/blog/archives/2005/12/scuttle.html


人気blogランキング
投稿者 matoyan : 2006年12月28日 01:29

コメント

コメントしてください




保存しますか?