EllPro
@EllPro
вроде пишу какой-то код elsevar.de

Как в Yii2 удалить html теги?

<?= $form->field($model, 'LastName')->textInput()
strip_tags() не помогает
в опциях пол encode => true также
HTMLPurifier
Не помогло ничего.

У меня форма, пользователь вводит данные, нужно удалить все теги перед отправкой. Может не там правлю?!
  • Вопрос задан
  • 4140 просмотров
Решения вопроса 2
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
strip_tags() не помогает

не может быть, Вы просто не туда его лепите. Код в студию.
Вот это должно работать:
<?php $model->LastName = strip_tags($model->LastName); ?>
<?= $form->field($model, 'LastName')->textInput(); ?>

Но лучше это в моделе сделать и используйте camelCase (вместо LastName - lastName)
Ответ написан
slo_nik
@slo_nik Куратор тега Yii
Добрый день.
Очистить пользовательский текст от тегов можно при помощи htmlpurifier, который уже встроен в yii.
В использовании очень прост и гибко настраивается.
Используйте в beforeSave() примерно так:
public function beforeSave($insert)
    {
        if (parent::beforeSave($insert)) {
            $this->text = self::purifier($this->text);
            return true;
        } else {
            return false;
        }
    }

    public static function purifier($text)
    {
        $pr = new HtmlPurifier;
        return $pr->process($text);
    }
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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