嘿伙计们我正在使用 tinymice ,在我创建的laravel管理面板中,之前这只是一个文本框,所以我会得到看起来像这样的内容:
I have a lovely garden in my house and i love it
现在有了这个richtextbox,我得到的内容存储在我的表columb中,如下所示:
<p>I Love Eggs and i Also Love to eat hame.</p>
<p> </p>
<p><strong>Yeah Danm ! hahah Thats funny.</strong></p>
我在视图文件中运行了以下代码:
@foreach($recentPost as $recent)
<div class="col-md-6">
<div class="indi-news-highlight-box">
<a href="{!! route('getArticle' , ['id' => $recent->id ]) !!}">
<img src="{{ URL::asset('images/temp/blog-post-image.jpg') }}" alt="{!! $recent->title !!}">
</a>
<div class="content-box">
<h3>
<a href="{!! route('getArticle' , ['id' => $recent->id ]) !!}">
{{ $recent->title }}
</a>
</h3>
<p>
{{ $recent->blog_content }}
</p>
</div>
</div>
</div> <!-- End col-md-6 -->
@endForEach
以下部分输出从richtextbox中获取的描述:
<p>{{ $recent->blog_content }}</p>
现在我在前端获得以下内容:
正如您所看到的,HTML标签在视图中输出,我该如何防止这种情况?如何防止HTML在我的视图中输出??。
我不想删除html标签 LIKE HERE ,我想保留它们,所以我可以在CSS中做样式,但我不希望显示html标签在我的前端,这是什么解决方案?
答案 0 :(得分:2)
将其显示为未转义数据 链接至Laravel docs
Blade正在阻止return [
'aliases' => [
// extend the page controller class
'PageController' => '\Application\Concrete\Page\Controller\PageController',
];
,但使用以下语法可以告诉它不要进行XSS
预防。
XSS
答案 1 :(得分:0)
更改语法
{{}}
到
{!! !!}
就是说
{!! $recent->blog_content !!}