For Want Of A Better Word

【PHP】【DB開発メモ】PDO_LIKEが動かん!プレースホルダの誤用

      2015/04/18

前もはまった気がする….
成長しない。

PHP: プリペアドステートメントおよびストアドプロシージャ – Manual

例6 プレースホルダの間違った使用法

prepare(“SELECT * FROM REGISTRY where name LIKE ‘%?%'”);
$stmt->execute(array($_GET[‘name’]));

// プレースホルダは、値全体に対して使用しなければなりません
$stmt = $dbh->prepare(“SELECT * FROM REGISTRY where name LIKE ?”);
$stmt->execute(array(“%$_GET[name]%”));
?>

前者が誤用。
後者が正。

渡す値の方を%%で囲まないといけない。
渡す値の方を%%で囲まないといけない!!

 - mysql, php

  関連記事

lgi01a201309210900
Linux 立ち上がっているサービス 空いているポートを確認する。

■立ち上がっているサービスの状態確認 コマンド [crayon-58473271 …

php-logo
リテラル

プログラムのソースコード中に使用される定数のこと。「255」「fujiyama」 …

cakephp_logo
Cake SQL確認

よく忘れるのでメモメモ。default.ctpに書いているけど、すぐ消しちゃうし …

php-logo
【PHP】2次元連想配列のソート用function

見たいな時にポ …

lgi01a201309210900
PHPセキュリティ

「最善のセキュリティは、通常、ユーザによる業務の達成を防たげずに要求 を十分に達 …