ФорумПрограммированиеPHP для идиотов → Обьединение сообщений при выводе.

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

  • armageddance

    Сообщения: 29 Репутация: N Группа: Кто попало

    Spritz 7 июля 2011 г. 11:44

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

    Набросал вот такой код:

    <?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 не работает с предыдущими итерациями цикла в текущей итерации.
  • Animator

    Сообщения: 194 Репутация: N Группа: Кто попало

    Spritz 7 июля 2011 г. 12:05, спустя 21 минуту 13 секунд

    а так не пробовал
    $date_sent_checker[$im['date_sent']]
  • armageddance

    Сообщения: 29 Репутация: N Группа: Кто попало

    Spritz 7 июля 2011 г. 12:09, спустя 4 минуты 11 секунд


    а так не пробовал
    $date_sent_checker[$im['date_sent']]


    да не суть важно как время сравнивать, какие ключи использовать, у меня в коде вот проблемное место: $admin_fio_list[$y-1].=$im['admin_fio']." ";
    Хз как в предыдущий элемент цикла засунуть текущий элемент.
  • Animator

    Сообщения: 194 Репутация: N Группа: Кто попало

    Spritz 7 июля 2011 г. 12:24, спустя 15 минут 17 секунд

    $admin_fio_list[$y-1].=$im['admin_fio']." ";
    - ну да, я до туда и не дошел :)

    во первых, нахрена точка перед знаком равно?
    во вторых, есть хорошая функция var_dump() называется
    в третьих, сначала собери массив, убедись что тебе именно такой массив надо, а потом уже ХТМЛ рисуй

    ты случайно на в дримвивере все это делаешь?
  • armageddance

    Сообщения: 29 Репутация: N Группа: Кто попало

    Spritz 7 июля 2011 г. 12:45, спустя 21 минуту 9 секунд


    $admin_fio_list[$y-1].=$im['admin_fio']." ";
    - ну да, я до туда и не дошел :)

    во первых, нахрена точка перед знаком равно?
    во вторых, есть хорошая функция var_dump() называется
    в третьих, сначала собери массив, убедись что тебе именно такой массив надо, а потом уже ХТМЛ рисуй

    ты случайно на в дримвивере все это делаешь?

    Точка= - прибавление к предыдущему элементу нового элемента, конкатенция, так я собираю массив из admin_fio
    Сейчас попробую массив пособирать.
    Нет, я в rapid php работаю.
  • Animator

    Сообщения: 194 Репутация: N Группа: Кто попало

    Spritz 7 июля 2011 г. 13:31, спустя 45 минут 6 секунд


    $y++; // $y = 1
    $date_sent_checker[$y]=$im['date_sent']; // $date_sent_checker[1] = какая то дата var_dump($date_sent_checker) array( 1 => date_sent )
    if($date_sent_checker[$y]==$date_sent_checker[$y-1]) { // если $date_sent_checker[1] == $date_sent_checker[1-1 тоесть 0] с какого собствено х…
  • Andreus

    Сообщения: 16 Репутация: N Группа: Кто попало

    Spritz 18 августа 2012 г. 23:28, спустя 408 дней 9 часов 57 минут

    В лесу родилась елочка, в лесу она росла. Зимой и летом стройная, зеленая была.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!