inputlog
CakePHP 1.1 + xampp 1.6.5 での文字化け
Fast CakePHPを参照しつつCakePHPを試していたのですが、DBの日本語を表示しようとしたところで????に文字化けしてしまいました。
なんとなくMySQLのせいかなというのはわかっていたのですが、軽く検索をかけたところすぐに解決方法を発見しました。 artful: XamppのphpMyAdminの文字化けーその2 C:\xampp\mysql\bin\my.cnf というファイルの[mysqld]の最後41行目あたりに次のように追加するだけで大丈夫でした。
init-connect=SET NAMES utf8
Fast CakePHP (LLフレームワークBOOKS # 4)
posted with amazlet at 08.04.09
秋田 真宏 技術評論社 売り上げランキング: 42621
おすすめ度の平均: 
名前のとおり。
ちょうど良い分量と内容
初心者でも分かりやすい
CakePHPを手早く知るにはよい一冊だが
- Comments: 0
- Trackbacks: 0
yuga.js 0.5.1 - 優雅なWeb制作のためのJavaScript
- 2008-03-06 (木)
- JavaScript | jQuery | yuga.js
バージョンアップはこそこそしていたりする優雅なWeb制作のためのJavaScript yuga.jsの0.5.1を公開します。
CSS HappyLifeの平澤さんにわたして公開していただいた0.4.2からの差分は以下の通りです。
- 全体の構造変更
- グローバル変数yugaをやめ、プラグインの記述方法でjQueryオブジェクト内にyugaを持つように
- 機能別にfunctionを分け、ソースの最初で初期化をするように
- 初期化の際、各パラメータを設定できるように
- interface.roのスクロールが1.2系で動作しないためスクロールを独自実装(interface.jsを廃止)
- 外部リンクを別ウインドウで開く機能を初期化パラメータで簡単にoffにできるように
不具合などありましたら、この記事にコメントしていただけると助かります。
追記: yuga.js 0.5.3 公開しました。
- Comments: 8
- Trackbacks: 1
マウスの買い替え
- 2007-12-31 (月)
- Hardware
家のデスクトップのマウスの調子がおかしくなりました。ドラッグ中にボタンが離されたことになってしまい、途中でつかんでいたファイルなどを落としてしまうのです。最初はPCのせいかと思って再起動してみたのですが改善されず、ノートのほうにマウスをつないでみて、ようやくマウスが壊れていることとに気付きました。
いままでロジクールのマウスばかり使っていたのですが、はじめてマイクロソフトのマウスを買ってみました。最近出た無線のモバイルマウスです。デスクトップで使うのですが、持った感じいちばんこれがしっくりきたのです。
買ってから気づいたのですがこのマウスは2.4GHzとBluetoothを切り替えて使えるようになっているので、BluetoothをMac miniに登録、2.4GHzのレシーバーはメインのWindowsにというふうに設定しました。これで後ろのスイッチを切り替えることでMacとWindowsの接続を切り替えることができます。普段は常時起動しているMac miniにBluetoothで接続しておき、メインのWindowsを起動しているときは2.4GHzに切り替え、Mac miniはSynergyで操作という設定にすることで、机の上のマウスを一つにできそうです。
Microsoft Mobile Memory Mouse 8000 BSA-00008
posted with amazlet on 07.12.31
マイクロソフト (2007/12/07) 売り上げランキング: 914
おすすめ度の平均: 
Microsoft製にしてはデザインが良い
Bluetoothでも2.4GHzでも繋がる
bluetoothで、充電しながら有線でも使える
- Comments: 2
- Trackbacks: 0
Ext.js 2.0 書き方その2: HTML要素の取得
- 2007-12-07 (金)
- Ext JS | JavaScript
最初に今回使うHTMLを用意します。今回はsecond.jsにスクリプトを書いていきます。
<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Inputlog - Ext test2</title> <link rel="stylesheet" href="css/ext-all.css" type="text/css" /> <script src="js/jquery-1.2.1.min.js" type="text/javascript"></script> <script src="js/jquery-plugins.js" type="text/javascript"></script> <script src="js/ext-jquery-adapter.js" type="text/javascript"></script> <script src="js/ext-all.js" type="text/javascript"></script> <script src="js/second.js" type="text/javascript"></script> </head> <body> <div id="mydiv">テスト用div要素1</div> <div class="section">テスト用div要素2</div> </body> </html>Ext.jsでは他のライブラリと同じように、標準のDOMの代わりに簡単にDOMツリーを操作するための仕組みがあります。 いくつか方法がありますが、主に使うのはExt.get()とExt.select()の二つでしょう。
Ext.get()
Ext.get()は要素のid属性から要素を取得するメソッドです。次のように使います。
Ext.onReady(function() {
var mydiv = Ext.get('mydiv');
mydiv.setStyle('color', 'red');
});
Ext.get()はdocument.getElementById()のように通常のDOM Element nodeを返すわけではありません。返ってくるのはExt.Elementというオブジェクトです。Ext.Elementには要素の操作を簡単にする多くのメソッドがあります。setStyle()はその中の一つで、CSSのプロパティ名、値の順で文字列として指定することでスタイルを適用することができます。また次のようにオブジェクトで渡せば複数のスタイルもかけられます。
Ext.onReady(function() {
var mydiv = Ext.get('mydiv');
mydiv.setStyle({
color: 'red',
background: '#eee'
});
});
Ext.get()は文字列でid名を渡す代わりに、DOM Element Nodeやすでに取得したExt.Elementを渡しても同じように動作します。
Ext.onReady(function() {
var mydiv = Ext.get(document.getElementById('mydiv'));
mydiv.setStyle('color', 'red');
});
Ext.onReady(function() {
var mydiv = Ext.get(Ext.get('mydiv'));
mydiv.setStyle('color', 'red');
});
上のような書き方はあまり意味がありませんが、変数にいれてあるものがid名の文字列なのか、DOMノードやExt.Elementなのかを気にせずにExt.Elementを取得することができます。
Ext.select()
Ext.get()ではidをベースに取得していますが、idを使わずクラス名や要素名で要素を取得したいことはよくあります。Ext.select()を使うとCSSのセレクタで要素を取得することができ、非常に便利です。
Ext.onReady(function() {
var mydivs = Ext.select('div');
mydivs.setStyle('color', 'red');
});
Ext.select()が返すのはExt.Elementではありません。Ext.CompositeElementという複数の要素を扱えるオブジェクトです。別のオブジェクトですが、Ext.Elementで用意されている設定や更新に関する各メソッドをすべて実装しています。例のようにsetStyle()を利用した場合該当するすべての要素に大してスタイルを設定することになります。
ちなみにここまでのものをjQueryで書くと次のようになります。
$(function(){
var mydivs = $('div');
mydivs.css('color', 'red');
});
jQueryではセレクタを使った要素取得に手段が絞られているため、非常にわかりやすくなっています。jQueryに慣れているのであれば、こういった要素にスタイルを適用するといったプログラムはこちらを使ってしまってもよいかもしれません。
次回はjQueryではできない、Ext.jsならではの機能であるダイアログを扱う予定です。
- Comments: 1
- Trackbacks: 0
Ext.js 2.0 書き方その1: DOMツリー構築後に実行
- 2007-12-07 (金)
- Ext JS | JavaScript
Ext.js 2.0 Bata1とjqueryを使ったエントリーを書いてから1か月が過ぎてしまいました。。。Ext.jsは2.0の正式版が発表されました。僕の方はやっとExtを使う仕事に戻ったのでExt.js関連のエントリーを書いていきたいと思います。
さて、まずはバージョンアップしてしまったので各ファイルの構成を作りなおします。今回は次のようにしました。
- jquery 1.2.1 - jquery.comより最新版を取得)
- jquery-plugin.js - Ext.js adapterフォルダにあるもの
- ext-jquery-adapter.js - Ext.js adapterフォルダ
- ext-all.js - Ext.js 本体 全部いり
- first.js - これから記述するスクリプトを書くためのファイル
基本的にはExt.js 2.0正式版のファイルにjqueryだけ最新版に差し替えただけです。(同梱されていたjquery.1.1.1より最新版のほうが動作速度の面で有利なため)これらを読み込ませるため、次のようなHTMLを用意しました。
<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Inputlog - Ext test1</title> <meta name="description" content="Ext.jsのテストページ" /> <link rel="stylesheet" href="css/ext-all.css" type="text/css" /> <script src="js/jquery-1.2.1.min.js" type="text/javascript"></script> <script src="js/jquery-plugins.js" type="text/javascript"></script> <script src="js/ext-jquery-adapter.js" type="text/javascript"></script> <script src="js/ext-all.js" type="text/javascript"></script> <script src="js/first.js" type="text/javascript"></script> </head> <body> </body> </html>HTMLが用意できたところでfirst.jsを書いていきます。まずはExtがうまく動作しているか次のように書いてみましょう。
Ext.onReady(function() {
alert('hello');
});
これでブラウザで表示してみます。アラートボックスでhelloと表示されればExt.jsはうまく動作しています。
Ext.onReadyを使うと引数に書かれたfunctionが、DOMツリーを構築後に実行されます。jqueryでいうところの$(function)と同じです。
$(function(){ // $(document).ready(function(){ としても同じ
alert('hello');
));
今回はここまで。次回はHTML要素の取得について書きます。
- Comments: 0
- Trackbacks: 0
- Search
- Feeds
- Meta


