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(); }