在ActiveForm中,我有:
<?php echo $ form-> field($ model,'text')-> textarea(['rows'=> 10])?>
当我在那里写任何文字时,它都可以正常工作。但是,当我想在其中放置一个网址(例如“ https://instagram.com “)或脚本标签时,抛出403禁止的错误。
顺便说一句,它可以在我的本地主机上正常工作,但是在服务器上会抛出这样的错误。
答案 0 :(得分:0)
您可以在将字符串保存到数据库之前尝试转义字符串。
在保存之前对文本区域的数据进行编码:
\yii\helpers\Html::encode($model->text)
,最好使用预备语句:
->where('status=:status', [':status' => $status])
关注:
https://www.yiiframework.com/doc/guide/2.0/en/security-best-practices#avoiding-sql-injections
https://www.yiiframework.com/doc/guide/2.0/en/security-best-practices#avoiding-xss
答案 1 :(得分:0)
您可以尝试使用CLEditor处理带有html标签的文本。