タグ

PDOに関するbrendonのブックマーク (3)

  • 突然のUnbuffered Query…PDO+MySQLで入り込んだ迷宮 - Qiita

    CodeIgniterをバージョンアップしたところ、思わぬ形でPHPのバグを踏んでしまいました。 MySQLのバッファモード トラブルに見舞われるまで知らなかったのですが、PHPからMySQLを使う場合には、「バッファモード」と「非バッファモード」があります(リファレンス)。 バッファモード…SQLを発行すると、自動的にPHP側へ全データを取ってくる。デフォルト設定。 非バッファモード…SQLを発行した段階ではまだデータを取ってこない。 一見すると、非バッファモードのほうが便利そうに見えるのですが、1つ大きな問題があります。非バッファモードの場合、一度投げたクエリを始末し切るまで次のクエリが投げられないのです。もちろん、それを意識した上でPDOなりMySQLiなりを直接叩くのであればまだ使いでもあるのですが、(非バッファモードに対応しない)フレームワーク経由でDB接続するとなると、どこでク

    突然のUnbuffered Query…PDO+MySQLで入り込んだ迷宮 - Qiita
  • PHP5.3.6からPDOの文字エンコーディング指定が可能となったがWindows版では不具合(脆弱性)あり - 徳丸浩の日記(2011-03-22)

    _PHP5.3.6からPDOの文字エンコーディング指定が可能となったがWindows版では不具合(脆弱性)あり PHP5.3.6からPDO/MySQLにてデータベースの接続文字列にて文字エンコーディングが指定可能となりました。この機能を検証した結果、Linux上では正常な動作を確認しました。Windows版でも一見動作するようですが、動的プレースホルダ内部のエスケープ処理に不備があり、Shift_JISでデータベースと接続している際にSQLインジェクション脆弱性の可能性があります。 きっかけ @haruyamaさんのツイートがきっかけで、PHP5.3.6からPDOの文字エンコーディング指定が有効となったことを知りました。 PHP 5.3.6以降では PDO/MySQLのDSNでのcharset指定が有効になったようです. (MySQL 4.1.11以降, MySQL 5.0.7以降, もし

  • log.metatype » OS X Leopard My Setting (PHP)

    デフォルトのPHPを使う。 デフォルトのPHPに含まれない、 PEAR、 PDO MySQL Driver、GDを追加インストールする。 PEARのインストール MacPortsのpear-baseはMacPortsのPHPを参照したり、 インストールディレクトリを間違えるので駄目。 PEARインストーラをダウンロード。 curl http://pear.php.net/go-pear > go-pear.php インストーラに従ってインストール。 sudo php -q go-pear.php 開始確認 はい:Enter インストール場所確認 そのまま:Enter The following PEAR packages are bundled with PHP: MDB2. Would you like to install these as wel

  • 1