Mysql Вывести данные без повторений из БД из 3 взаимосвязанных таблиц .

fanat190

Новичок
Всем привет. У меня проблема с выводом данных из бд. Суть. Есть таблицы например klientt, proekt, etap, dokument. Все они связаны по id каждого. Вот код:
$result="SELECT clientt.name_clientt, proekt.id_proekt, proekt.name_proekt, etap.id_etap, etap.name_etap, dokument.name_dokument
FROM
clientt, proekt, etap, dokument
WHERE
clientt.id_clientt=$id_clientt and clientt.id_clientt=proekt.id_clientt and proekt.id_proekt=etap.id_proekt and proekt.id_proekt=dokument.id_proekt and etap.id_etap=dokument.id_etap
GROUP BY
dokument.id_dokument DESC";
$res=mysql_query($result);

while($row2=mysql_fetch_assoc($res)){
<td><?=$row2['name_clientt'];?></td>
<td><?=$row2['name_etap'];?></td>
<td><?=$row2['name_etap'];?></td>
<td><?=$row2['name_dokument'];?></td>
}



у меня выводится в следующем виде:
клиент1 проект1 этап1 документ1
клиент1 проект1 этап1 документ2
клиент1 проект2 этап1 документ3
клиент1 проект3 этап1 документ4

а нужно в следующем виде:
клиент1 проект1 этап1 документ1
.......................................документ2
..............проект2 этап1 документ3
..............проект3 этап1 документ4
то есть нужно выводить без повторения. подскажите пожалуйста, как сделать??? несколько дней уже голову ломаю
 

riff

Новичок
PHP:
$tmp = array('name_client'=>'', ...);
while($row=mysql_fetch_assoc($res)){
if ($tmp['name_clientt'] === $row['name_clientt']) {
    <td></td>
}
else {
    <td><?=$row['name_clientt'];?></td>
    $tmp['name_clientt'] = $row['name_clientt'];
    $tmp['name_etap'] = ''; //последующие обнуляем
    $tmp['name_document'] = '';
}

//другие также
}
 
Последнее редактирование:

riff

Новичок
Ах, да, и стандартное:
Не пользуйся mysql_*, замени их на mysqli_*
 
Сверху