とりあえず全部。とりあえず全部やる。
仕事
五里霧中
終わるのか?これ。
ひたすらプログラム書いて疲れた…。
単語
distributer → distributor
MySQLの主キー(プライマリーキー)を削除する方法
mysql > ALTER TABLE (テーブル名) DROP PRIMARY KEY;
うーん、基礎抜け。
不等号
SQLで不等号は「<>」
ついつい「!=」などと書いてしまうのは、経験か。
そういえばBASICは「<>」が不等号だったな。「/=」ってのがあったが、なんだったっけ?と思い出せばVHDLだった。*1
*1:あんまり使わない気もするが
eAccelerator 0.9.5 その後
eAcceleratorを導入したもパフォーマンスが全く上がらず謎だったのだが、今朝謎が判明。
php.iniの記述のパラメータが足りないという初歩的なミスでした。
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"
上の3行が抜けていた。何故、抜かして記述してしまったかそちらの方が謎。
キャッシュする際のキーやセッション、中身をどの様に保管するかを記述していないのだからパフォーマンスが上がるはずがない。
上記の記述の場合、共有メモリとディスクに夫々がキャッシュされる。
記述後、Apacheを再起動して設定を有効にする。
閲覧してみるとパフォーマンスが向上していることをささやかに実感。
あと、eAcceleratorに付属しているcontorol.phpで実際にキャッシュが効いているPHPのスクリプトの一覧や統計情報が見れるが、これもphp.iniのeAcceleratorの設定に、
eaccelerator.allowed_admin_path = "(control.phpが置いてあるURL)"
としないとスクリプトの一覧が表示されないので注意。
それっぽく
画面遷移を生じない処理をさせるwebアプリで以下の様なことをやってみた。
- ファイルのダウンロードの様な画面遷移の無い処理をするボタンをクリック
- その処理が実行か可能かをAjaxで問い合わせ、JSONで応答
- 上で得られた応答をJavaScriptでevalで評価、値を判定して処理を実行してよい場合はJavaScriptでフォワード。問題があれば、ダイアログ表示。
それっぽく書いてみたら、それっぽく出来た。*1
ただ、それっぽくのままではいけないのだが、正攻法なやり方はどうなのだろうか?
*1:JavaScriptで文字連結を '.' でしようとしていたり、PHPで文字連結を '+' でしようとしていたのは内緒だ
JavaScript
失敗。
何をしてるんだか。やっぱり休みぼけ。下の様な感じで書いていた。
下の様に書いてfooを for...in したら意図しないものまでトレースされてしまいます...。
var foo; function foo(key, value) { foo[key] = value } function trace() { for(var hoge in foo){ alert(foo[hoge]); } }
早く気づけず。愚かであった。
正月ぼけ
かなり重傷。また週末連休で解消しそうにないなぁ。
- formにname属性しか書いていないのに prototype.js の $('foo') で値を取りにいこうとしていた。
- ちなみにformのname属性はXHTML1.0では非推奨、XHTML1.1では廃止だそうだ。
- コーヒーの分量を間違えた
最近のコメント