Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 0.4.0

Bug #4638 createWhere dont work correctly with null value
Submitted: 2005-06-20 13:18 UTC
From: fabio at bs2 dot com dot br Assigned: lsmith
Status: Closed Package: LiveUser_Admin
PHP Version: Irrelevant OS:
Roadmaps: (Not assigned)    
Subscription  
Comments Add Comment Add patch


Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know! Just going to say 'Me too!'? Don't clutter the database with that please !
Your email address:
MUST BE VALID
Solve the problem : 33 + 36 = ?

 
 [2005-06-20 13:18 UTC] fabio at bs2 dot com dot br
Description: ------------ I'm trying to get all users that not have group. The SQL that I need is some like these: SELECT LU_perm_users.auth_user_id AS auth_user_id FROM LU_perm_users LEFT JOIN LU_groupusers ON LU_perm_users.perm_user_id = LU_groupusers.perm_user_id WHERE LU_groupusers.group_id IS null And in function createWhere in LiveUser_Admin_Storage_SQL class on line 457-458 have this code: if (is_array($value)) { if (isset($value['value'])) { I suggest change the isset($value['value']) to array_key_exists('value',$value) because if I have null in the $value['value'], code will do the expected. this change will not do the query that I have to do but is an begin. Reproduce code: --------------- $luAdmin =& LiveUser_Admin::singleton($LuConf); $luAdmin->setAdminContainers(); $luAdmin->getUsers('perm', array('group_id' => array('op' => 'IS', 'value' => 'null', 'cond' => '')) );

Comments

 [2005-06-20 14:02 UTC] smith at backendmedia dot com
This bug has been fixed in CVS. In case this was a documentation problem, the fix will show up at the end of next Sunday (CET) on pear.php.net. In case this was a pear.php.net website problem, the change will show up on the website in short time. Thank you for the report, and for helping us make PEAR better. I have tweaked the NULL handling so that you wouldnt even have to specify the 'op' anymore. However it will also work if you specify the 'op'. However note that in your example you need to remove the quotes from 'null' for any of this to work.