Вход • Регистрация

Отправка личного сообщения из страницы объявления

  • 06 апреля 2016 г.
  • хочу сделать возможность написать личное сообщение не из страницы пользователя, а непосредственно из страницы объявления. Вывожу форму личного сообщения таким образом:

    if (! empty($result["form"]))
    {
    echo $this->get('form', 'messages', array("to" => $result['user_id'])); //переменной "to" присваиваем значение user_id (id автора объявления)
    }

    шаблон формы:

    echo '<form method="POST" action="" id="messages" class="ajax messages_form">
    <div class="block_header">'.$this->diafan->_('Написать автору').'</div>
    <input type="hidden" name="module" value="messages">
    <input type="hidden" name="action" value="add">
    <input type="hidden" name="to" value="'.$result["to"].'">
    <input type="hidden" name="redirect" value="'.(! empty($result["redirect"]) ? $result["redirect"] : '').'">';

    echo $this->get('get', 'bbcode', array("name" => "message", "tag" => "message", "value" => ""));

    echo '<br>
    <input type="submit" value="'.$this->diafan->_('Отправить', false).'">
    <div class="errors error"'.(!empty($result["error"]) ? '>'.$result["error"] : ' style="display:none">').'</div>
    </form>';



    при отправке формы, в таблицу "messages" в поле "to_user" записуется id текущего объявления, но не id - автора как положено и естественно модуль не корректно работает.... как это можно исправить?
  • 07 апреля 2016 г.
  • форму вывожу в ab.view.id.php

    if (! empty($result["form"]))
    {
    echo $this->get('form', 'messages', array("to" => $result['user_id'])); //переменной "to" присваиваем значение user_id из таблицы БД "ab"
    }


    Шаблон формы личного сообщения messages.view.form.php
    echo '<form method="POST" action="" id="messages" class="ajax messages_form">
    <div class="block_header">'.$this->diafan->_('Написать автору').'</div>
    <input type="hidden" name="module" value="messages">
    <input type="hidden" name="action" value="add">
    <input type="hidden" name="to" value="'.$result["to"].'">
    <input type="hidden" name="redirect" value="'.(! empty($result["redirect"]) ? $result["redirect"] : '').'">';

    echo $this->get('get', 'bbcode', array("name" => "message", "tag" => "message", "value" => ""));

    echo '<br>
    <input type="submit" value="'.$this->diafan->_('Отправить', false).'">
    <div class="errors error"'.(!empty($result["error"]) ? '>'.$result["error"] : ' style="display:none">').'</div>
    </form>';

    и еще вопрос:
    в файле messages.action.php в валидации введенных данных есть проверка:

    if (! empty($this->diafan->_route->show))
    {
    $_POST['to'] = $this->diafan->_route->show;
    }

    если ее убрать, то все работает. для чего она?

Новости

  • 15 сентября, понедельник
  • У нас отличные новости! Мы выпустили новую сборку DIAFAN.CMS 7.3, которая включает встроенные нейросети непосредственно в административной панели. Это значит, что создание контента для вашего сайта больше не будет проблемой — искусственный интеллект возьмет эту задачу на себя, избавляя вас от необходимости привлекать копирайтеров или тратить время на написание текстов самостоятельно.
  • 25 марта
  • Мы обновили систему тарифов, учитывая опыт работы с клиентами и современные рыночные условия. Новая тарифная сетка разработана специально для того, чтобы лучше отвечать вашим потребностям. Резкого повышения цен не произошло. Более того, некоторые тарифы даже стали выгоднее и доступнее. 
  • 17 января
  • В преддверии 2025 года была выпущена сборка 7.2.5, которая не приносит радикальных изменений в функциональности, но способствует повышению стабильности работы системы и расширению возможностей облачного сервиса для создания сайтов.

Блоги

  • 10.09.2025
  • DIAFAN.CMS славится нагрузоустойчивостью и безопасностью, про инциденты со взломом сайта на нашей системе давненько не слышали, но недавно получили мы письмо от fstec.ru такого характера:

    Обнаружена уязвимость в CMS-системе DIAFAN, позволяющая нарушителю, действующему удалённо, красть сессионные куки через XSS-атаку.