Ah. I’ll do the upgrade.
Interesting though - when I switched approaches and tried to assign a parentheses-enclosed list of the array values (rather than the native php array $v):
foreach($_POST as $k=>$v) {
if (is_array($v)) {
$list = '';
foreach ($v as $val) { $list .= "'$val',"; }
$list = substr($list,0,-1); //get rid of last comma
$query["{$k}:IN"]= '(' . $list . ')';
//$query["{$k}:IN"]= 'array(' . $list . ')'; // also tried this...
Then the IN clause DOES seem to come through... but it must be malformed, because I get zero results.
object(xPDOQueryCondition)#24 (3) {
["sql"]=>
string(32) "`Extraprofiles`.`ethnicity` IN ?"
["binding"]=>
array(3) {
["value"]=>
string(37) "('mixed','arctic','caucasian_indian')"
["type"]=>
int(2)
["length"]=>
int(0)
}
Not sure if this means anything either, but the ’type’ shouldn’t be ’int’ for that field... dbtype is set to varchar and phptype to string in my schema and class files.
I guess this is all a moot point, if the upgrade fixes it.