這裏正在發言不綁定?
MySQL的REGEXP用?佔位符如何與PHP變量
$query_select_all = "SELECT * FROM TableName WHERE CAST(ColumnName AS UNSIGNED) REGEXP '111|114|115'";
$sql = $db->prepare($query_select_all);
$sql->execute();
想用'111|114|115'
作爲PHP變量(例如$data
)。
更改代碼
$data = array('111|', '114|', '115');
$query_select_all = "SELECT * FROM TableName WHERE CAST(ColumnName AS UNSIGNED) REGEXP (?,?,?)";
$sql = $db->prepare($query_select_all);
$sql->execute($data);
$data
看起來像Array ([0] => 111| [1] => 114| [2] => 115)
語句的執行得到SQLSTATE[21000]: Cardinality violation: 1241 Operand should contain 1 column(s)
後。
與$data = array('111|', '114|', '115');
什麼是正確的代碼不正確假設的東西嗎?
請打印您的整個查詢。 '$ query_select_all_start'包含什麼? – silkfire
有一刻...會改變的問題 – user2360831