From 4c546ed3e90aa371053290ed4842fd9cad7f175c Mon Sep 17 00:00:00 2001 From: Timothy Warren Date: Fri, 24 Aug 2012 16:17:08 +0000 Subject: [PATCH] Fix issue with Query_Builder->where_in() method --- classes/query_builder.php | 6 +++--- tests/core/db_qb_test.php | 13 +++++++++++++ tests/db_files/FB_TEST_DB.FDB | Bin 802816 -> 802816 bytes 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/classes/query_builder.php b/classes/query_builder.php index a9059cd..a415661 100644 --- a/classes/query_builder.php +++ b/classes/query_builder.php @@ -698,12 +698,12 @@ class Query_Builder { $key = $this->quote_ident($key); $params = array_fill(0, count($val), '?'); - foreach($val as &$v) + foreach($val as $v) { $this->values[] = $v; } - $string = $key . " {$in} ".implode(',', $params).') '; + $string = $key . " {$in} (".implode(',', $params).') '; $this->query_map[] = array( 'type' => 'where_in', @@ -1396,7 +1396,7 @@ class Query_Builder { break; } - //echo $sql . '
'; + // echo $sql . '
'; return $sql; } diff --git a/tests/core/db_qb_test.php b/tests/core/db_qb_test.php index 19ff326..e0b539b 100644 --- a/tests/core/db_qb_test.php +++ b/tests/core/db_qb_test.php @@ -173,6 +173,19 @@ abstract class QBTest extends UnitTestCase { // -------------------------------------------------------------------------- + public function TestWhereIn() + { + if (empty($this->db)) return; + + $query = $this->db->from('create_test') + ->where_in('id', array(0, 6, 56, 563, 341)) + ->get(); + + $this->assertIsA($query, 'PDOStatement'); + } + + // -------------------------------------------------------------------------- + public function TestSelectAvg() { if (empty($this->db)) return; diff --git a/tests/db_files/FB_TEST_DB.FDB b/tests/db_files/FB_TEST_DB.FDB index 6939e6f7712222a0665908ae52c4a6220637576b..4214e14102ca1a49fc49872f15bbe5fcc5da26e9 100644 GIT binary patch delta 918 zcmZ9JPiPZS5XR^2pR{HueIh~?k)%mTCvYx`QEEk3YALXyn>VY z-)Z`}mLv&|vX16AHz1GqsSMc{O}fds=zg^0e(~ z$J4H-W1b%H^q{BrE$X@>8LvYzi!D%N4M`9`Hu>Rzx;4`lY{=UO`!5EK?!jwG(x9!%Y zHvY8s2cDL~Uka4k*=y39Rh&?~e8Cbg_uH7H!yO#MAhJJbqJu^Ck_xMMl;%2^DM}d& zxC{r1W(CT1{%RfQ^0nng1lus!2F-qDY=h4AFiTh0FwOgWYj{?@pyE1~ijwC9b+{YR zc0`ALFsB~j)Mf!szKkYTxRsaA1 delta 919 zcmZ9JPiPZC6vp3dlD6it*%1+HPfe4MDhTOGlpb7i^iLJUqXbDWo`hCdN|2!}Ly#Z{ z)luw451u?o#pa~+V8NT7doiuCrIi{K1uueccKTFymYKKT?wj{}-;7dIN=;o9aJu%f z4F85il{rv0E|mZbO#n|k-T=6A>V5UmF_$30qoeiMSj!PD53S04R*Hw++<5-y$g|`5;d_lCUCXc5F#F=#9J<21UKK|m_AAf}#$k=- zaxek&!6cjyDli@RFiQGIp#&djt`&S(rr4p_EKI^#dLJ!Rl2Y@&56}JX^&Wor4tL1S zo8+?qA%6Ytm{*%PBPe{rI)w`ZESj-Coc{*@)!EK(#MIA%XmO#D3LWO z5V`DMEv;_Ot+!Lyw!^l~>}SHZEw*ZIZef|;?{DEbamR$)SPyw$*4CkJSZ7i?>4P|N ziW8glZL$}eqdUZjoxOz}vS%~d-k?YJwE0FkAy>#95Lj~utdkC!??9!9$`O?#DoZSz zle<_I$~jv!Pj-pJ`;rr*Mp!eKbzu8w3TUM`Eyrn@TYKcJ<(zHoku#gg&XS9}Z7;4K za)soqD1kM1z}nrJfG9