Ваша проблема в том, что оба столбца называются status
, поэтому, когда формируется массив результатов, второе значение status
перезаписывает первое (так как массив PHP может иметь только одно значение для данного ассоциативного ключа). Вы можете обойти это, используя псевдонимы столбцов:
$query = $db->fetch("SELECT n.*, g.*, n.status as n_status, g.status as g_status
FROM helper AS n
LEFT JOIN getter AS g ON n.user_id= g.user_id
WHERE n.user_id='{$id}' OR g.user_id='{$id}' ");
if($query !== ''){
foreach($query as $value){
$output .= $value['n_status'];
}
print $output;
}
Обратите внимание, что у вас будет та же проблема с вашим столбцом user_id
(и, возможно, другими). Как правило, лучше перечислять нужные столбцы по отдельности (вместо использования *
), чтобы избежать этой проблемы с самого начала.