caleb89taylor
Member
Hi all,
We have some custom columns in xf_user that hold some custom auth id's. For new users after we upgraded from 1.1 to 1.3 these values are returning as 0 even though they have some value like 123455 in the database. Debugging all the way down to a query being run to get user by userId shows that when I run the exact query:
in MySql workbench I get all the correct values as expected, but the result of:
in Xenforo_Model_User::getUserById() returns a PHP object where our custom column id is 0.
My question is it possible this value is getting casted to 0 based upon some expected data type? I've tried modifying the column type to VARCHAR and INTEGER to test but it still gets converted to 0. It's currently a BIGINT. Any help would be appreciated.
We have some custom columns in xf_user that hold some custom auth id's. For new users after we upgraded from 1.1 to 1.3 these values are returning as 0 even though they have some value like 123455 in the database. Debugging all the way down to a query being run to get user by userId shows that when I run the exact query:
Code:
SELECT user.* , user_profile.*, user_option.*, user_privacy.*, permission_combination.cache_value AS global_permission_cache FROM xf_user AS user LEFT JOIN xf_user_profile AS user_profile ON (user_profile.user_id = user.user_id) LEFT JOIN xf_user_option AS user_option ON (user_option.user_id = user.user_id) LEFT JOIN xf_user_privacy AS user_privacy ON (user_privacy.user_id = user.user_id)
LEFT JOIN xf_permission_combination AS permission_combination ON (permission_combination.permission_combination_id = user.permission_combination_id) WHERE user.user_id = '12345';
in MySql workbench I get all the correct values as expected, but the result of:
PHP:
return $this->_getDb()->fetchRow('
SELECT user.*
' . $joinOptions['selectFields'] . '
FROM xf_user AS user
' . $joinOptions['joinTables'] . '
WHERE user.user_id = ?
', $userId);
in Xenforo_Model_User::getUserById() returns a PHP object where our custom column id is 0.
My question is it possible this value is getting casted to 0 based upon some expected data type? I've tried modifying the column type to VARCHAR and INTEGER to test but it still gets converted to 0. It's currently a BIGINT. Any help would be appreciated.