2014年11月7日金曜日

PHP: PDO ではカラム名に変数をバインドできない

PHP の PDO では bindParam() や bindValue() で、
SQL に安全に値を埋め込むことができる。

しかし ORDER BY や GROUP BY などで、
上記の関数のようにカラム名を変数で指定するための関数は準備されていない。

カラム名を変数からセットしたい場合は、
以下の様な感じで、許可するカラム名リストを作っておき、
その中のいずれかであれば直接埋め込むという形式がよさそう。
http://stackoverflow.com/questions/2542410/how-do-i-set-order-by-params-using-prepared-pdo-statement

値チェックせずに直接埋め込まないように注意。

2014年11月6日木曜日

MacPorts: PHP5.6 をデフォルトの PHP として使う

PHP5.6 をインストール
$ sudo port install php56

デフォルトのバージョンを 5.6 にする
$ sudo port select php php56

バージョンが変わったことを確認
$ php -v
PHP 5.6.2 (cli) (built: Nov  7 2014 02:29:59) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
    with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans

2014年11月5日水曜日

Xcode: 余計なインデントがされる

メニュー > Preferences > Text Editing > Indentation タブ

で下の方にある Automatic indent for: のチェックをすべて外す
とりあえず余計なインデントはされなくなる。

その状態で必要なものだけチェックを入れればOK。


2014年11月4日火曜日

phpMyAdmin: #2002 MySQLサーバにログインできません

MacPorts でインストールした phpMyAdmin がタイトルのエラーを出力してログインできなかった。

原因は MySQL の skip-networking が ON になっていたこと。
$ sudo vim /opt/local/share/mysql56/support-files/macports/my.cnf

skip-networking の行を削除して MySQL を再起動するとログインできるようになった。

$ sudo /opt/local/share/mysql56/support-files/mysql.server restart

2014年11月3日月曜日

iPhone6: 2本目の指紋を登録

設定 → Touch ID とパスコード → 指紋を追加
で2本目以降の指紋も登録しておける。

両手の親指&人差し指を登録しておけば足りそう。

参考

2014年11月2日日曜日

Mac:デフォルトで入っている読み上げ音声

システム環境設定 → 音声入力と読み上げ → テキスト読み上げ → システムの声 → カスタマイズ




英語(アメリカ合衆国) ー その他
に登録されている声は面白いものが多い。



Good News  は選択した英語をリズムに合わせて読み上げる、
Bubbles は水の中でしゃべっているような声、
他にもいろいろ。

チェックを入れて OK ボタンを押すと、
システムの声で選択できるようになる。

「キーを押したときに選択しているテキストを読み上げる」にチェックを入れた状態で、
英文を選択後、 alt + Esc で読み上げてくれる。

2014年11月1日土曜日

Yosemite: Safari の辞書から Wikipedia を削除

Magic Trackpad を使っている場合は、
3本指タップで単語の意味を調べることができる。
(日本語、英語問わず)

デフォルトだと英単語を調べた時に、
英語版の Wikipedia の内容も表示される。



Wikipedia の方は使わないのでオフにしてみる。

アプリケーションから「辞書」を起動。


メニューから環境設定を開く。
Wikipedia のチェックを外すと、Wikiepdia が表示されなくなる。