Обьединение сообщений при выводе.

Armageddance

Новичок
Пытаюсь обединить исходящие сообщения у пользователя, в случае если у них совпадает дата отправки $im['date_sent'] (а она совпадает в том случае, если сообщение отправлялось массово). На практике это означает пропуск дублированных сообщений и впихивание всех admin_fio в один блок $admin_fio_list и разделение пробелом.

Набросал вот такой код:
PHP:
<?php $date_sent_checker=array();
$y=0;
$admin_fio_list=array();
                			while($im=mysqli_fetch_assoc($outcoming_messages)){
                			  $y++;
                			  $date_sent_checker[$y]=$im['date_sent'];
                              if($date_sent_checker[$y]==$date_sent_checker[$y-1]) {
                 //$admin_fio_list[$y]=$admin_fio_list[$y-1];
                 $admin_fio_list[$y-1].=$im['admin_fio']." ";
                              }
                              else { $admin_fio_list[$y]=$im['admin_fio'];?>
                <tr><td>
                <p class="maintext"><?php echo $admin_fio_list[$y]; ?></p>
                <p class="maintext"><?php echo $im['date_sent']; ?></p></td>
                <td><a href="#" id="im_<?php echo $im['admin_id'];?>"><?php echo $im['message_content']; ?></a></td></tr>

             <? }  } ?>
Но пока не получается поместить в исходящих сообщениях все admin_fio в один блок. Есть подозрения, это оттого, что php не работает с предыдущими итерациями цикла в текущей итерации.
 

prolis

Новичок
http://phpfaq.ru/debug
PHP:
if($date_sent_checker[$y]==$date_sent_checker[$y-1])
Зачем дублировать весь массив. Запоминайте просто последнее значение даты.
 

baev

‹°°¬•
Команда форума
Armageddance, пишите значение итерации во временную переменную.
В следующей итерации сравнивайте текущее значение с этой временной переменной.

И, да — mysql тут практически не участвует.
Переношу тему.
 
Сверху