PDO で binValue を使ってもバインドされない.
PDO で binValue を使ってもバインドされないバグが起きています.
binValue の後に errorinfo を挟んだ結果 "HY093" とでました.debugDumpParams もしたのですが,バインドされていない文字列が結果として帰って来ました.
bindValue している変数は実数なので,調べた結果 PARAM_STR にしたのですが,PARAM_INT で試してもダメでした.
$pdo = new PDO($dsn['host'], $dsn['user'], $dsn['pass'], $dsn['driver_options']);
try {
$pdo->exec('SET NAMES utf8');
$sql = "SELECT * FROM location WHERE MBRContains(GeomFromText('LineString(? ?, ? ?)'), latlng)";
$select_loc = $pdo->prepare($sql);
$select_loc->bindValue(1, $ne_lng, PDO::PARAM_STR);
$select_loc->bindValue(2, $ne_lat, PDO::PARAM_STR);
$select_loc->bindValue(3, $sw_lng, PDO::PARAM_STR);
$select_loc->bindValue(4, $sw_lat, PDO::PARAM_STR);
$select_loc->execute();
$loc = $select_loc->fetch();
} catch(PDOException $e) {
$error = $e->getMessage();
}