The two joomla tables :
uh46v_fb_sw_user_items uh46v_comprofiler
id userid id user_id cb_country cb_intl_shipping
5 833 833 833 de ch|*|fr|*|de
6 833 834 834 fr ch|*|fr
11 835 835 835 ch ch|*|fr|*|de
10 834 836 836 fr
The Joomla query :
$userIntlShip = 'ch,de,fr';
$userCountry = 'de';
$db = JFactory::getDbo();
$query = $db->getQuery(true);
->select($db->quoteName(array('i.id')))
->from($db->quoteName('uh46v_fb_sw_user_items', 'i'))
->join('INNER', $db->quoteName('uh46v_comprofiler', 'c') . ' ON (' . $db->quoteName('c.id') . ' = ' . $db->quoteName('i.userid') . ')')
->where($db->quoteName('c.cb_intl_shipping') . ' LIKE "%'.$userCountry.'%" AND ' . $db->quoteName('c.cb_country') . ' IN ('.$userIntlShip.')');
$db->setQuery($query);
$rows = $db->loadObjectList();
$list = array();
foreach ($rows as $row)
{
$list[] = $row->id;
}
$authoritem = implode(',', $list);
echo $authoritem;
Causes the following error :
1054 Unknown column 'ch' in 'where clause' SQL=SELECT `i`.`id` FROM `uh46v_fb_sw_user_items` AS `i` INNER JOIN `uh46v_comprofiler` AS `c` ON (`c`.`id` = `i`.`userid`) WHERE `c`.`cb_intl_shipping` LIKE "%de%" AND `c`.`cb_country` IN (ch,fr,de)