2012年4月20日金曜日

IE9で開発者ツールを使うとスクリプトが正しく動作する問題

開発者ツールを起動したIE9と他のブラウザでは正しく動作するスクリプトが,開発者ツールを使う前のIE9だと異常終了してしまうという問題に遭遇してしまいました. 原因がわかったのでメモしておきます.

IE9では,「window.console」の値が一度開発者ツールを起動した場合とそうでない場合とで異なるようです. 一度開発者ツールを起動した場合,「window.console」の値をassert関数で表示すると,「[object]」となります. 一方,一度も開発者ツールを起動していない場合,その値は「undefined」となります.

スクリプト内に「console.log("hogehoge");」のようなコードがあると, 一度も開発者ツールを起動していない状態では,「undefined」な値を持つconsoleに対して,logメソッドを呼び出してしまうことになります. そのためにスクリプトが異常終了してしまうようです.

この問題はなかなか手強かったです.とにかく解決してよかった.

参考資料
[1] IE9では開発者ツールを起動しないと window.console は undefined だった

Moodleでadminのパスワードを忘れてしまったときの対処方法

Moodleでadminのパスワードを忘れてしまったときの対処方法をメモしておきます. 下記のコマンドを実行すると,adminのパスワードがmoodle-adminになります.
$ mysql -u root -p moodle
mysql> UPDATE `mdl_user`
SET `password` = '628879860f2d4b5815bbf726f45b3330'
WHERE `username` = 'admin';
mysql> exit
参考資料
[1] 管理者パスワードについて

MySQLでrootのパスワードを設定する方法

MySQLでrootのパスワードを設定する方法をメモしておきます.
$ mysql -u root -p
mysql> SET PASSWORD FOR root@localhost=PASSWORD('hogehoge');
mysql> exit
参考資料
[1] MySQLのrootパスワード設定