Задать вопрос
@thmskor
Front end разработчик

Как передать данные из формы в CMS symfony?

Есть форма

5fa8910a7348a877142078.jpeg

Данные обрабатываются кодом Symfony

public function actFeedbackForm()
    {
        $post = $this->request->request;
        
        $array = $post->all();
        
        // if (empty($array['email']) or empty($array['username']) or empty($array['phone']) or empty($array['text'])) {
        //     return json_encode(['status' => 'error']);
        // }
        
        $id = $this->models['feedback']->save($post);
        
        // $email = $this->models['orm']->getObject(5, true);
        $host = $this->request->server->get('HTTP_HOST');
        $this->mailer->setTo('mail@mail.com');
        $this->mailer->setSubject('Заявка №'.$id.', '.$array['username']);
        $this->mailer->setContent('<html>'
            .'Здравствуйте <b>Администратор</b>!<br />'
            .'Только что пользователь сайта <a href="http://'.$host.'" target="_blank">'.$host.'</a> отправил сообщение с формы обратной связи.<br /><br />'
            .'Email: <b>'.$array['email'].'</b><br />'
            .'Имя: <b>'.$array['username'].'</b><br />'
            .'Телефон: <b>'.$array['phone'].'</b><br />'
            .( !empty($array['project']) ? '<b>Проект</b>: '.$array['project'].'<br>' : '')
            .'<b>Текст сообщения:</b><br />'
            .(isset($array['text']) ? $array['text'].'<br>' : '')
            .'<br />'
            .'<br />'
            .'С уважением, система сайта <a href="http://'.$host.'" target="_blank">'.$host.'</a>'
            .'</html>');
        $this->mailer->send();

        return json_encode(['id' => $id]);
    }


и контроллером

final public function save($data)
    {
        $array = $data->all();
        $array['name'] = 'Обратная связь '.date('d.m.Y, H:i');
        $array['class_id'] = 39;
        $array['parent_id'] = 820;
        
        $id = $this->addObject($array, $array);
        return $id;
    }


Попадает в CMS и на почту только название 'Обратная связь '.date('d.m.Y, H:i'

Нужно чтобы попадали все данные: ФИО, Email, Text.

5fa892a4e6eab128860131.jpeg
  • Вопрос задан
  • 104 просмотра
Подписаться 1 Простой 4 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы