为什么存储在数据库中的 ckeditor 内容在 php 中不显示为 html
why ckeditor content stored in database do not display as html in php
我正在处理一个项目的博客部分。我集成了ckeditor并将数据保存到数据库中。当我在 php 中显示它时,它显示纯文本而不是 html。我尝试了不同的方法,但无法解决问题。请有人指导我。谢谢。
我在数据库中保存数据的功能
public function store_blog(Request $request){
$fname=null;
if($request->hasFile('image')){
$file=$request->file('image');
$fileName=uniqid().'.'.$file->getClientOriginalExtension();
$file->move(public_path('uploads/blogs/'),$fileName);
$fname=asset('uploads/blogs/'.$fileName);
}
$bbody=$request->blog_body;
$bbody = trim($bbody);
$bbody = stripslashes($bbody);
$bbody = htmlspecialchars($bbody);
Blog::create([
"title"=>$request->title,
"short_description"=>$request->short_desp,
"body"=>$bbody,
"cover_image"=>$fname,
"slug"=>str_replace(" ","_",$request->title),
]);
return redirect()->route('blog_index')->with('success','Blog created successfully');
}
此函数保存内容成功。但是当我在 laravel blade 视图中获取和显示时。 Ckeditor 内容将所有 html 显示为普通 text/string。我怎样才能强制渲染 html.
从数据库中获取博客的函数
public function show_Ablog(Request $request,$slug){
$blog=Blog::where('slug',$slug)->first();
return view('website.showAblog',compact('blog'));
}
在我的 blade 视图中
<div class="col-lg-12 dat">
{{($blog->body)}}
</div>
我已经尝试了
等所有功能
htmlspecialchars
htmlentities
我该如何解决这个问题。
当您的数据包含 HTML 个标签时,请使用
在 blade 文件中编写代码,如
{!! $blog->body !!}
尝试使用 php 语法,如
{!! $博客->正文!!}
注意:确保您的编辑发送正确的 html 内容?
我正在处理一个项目的博客部分。我集成了ckeditor并将数据保存到数据库中。当我在 php 中显示它时,它显示纯文本而不是 html。我尝试了不同的方法,但无法解决问题。请有人指导我。谢谢。 我在数据库中保存数据的功能
public function store_blog(Request $request){
$fname=null;
if($request->hasFile('image')){
$file=$request->file('image');
$fileName=uniqid().'.'.$file->getClientOriginalExtension();
$file->move(public_path('uploads/blogs/'),$fileName);
$fname=asset('uploads/blogs/'.$fileName);
}
$bbody=$request->blog_body;
$bbody = trim($bbody);
$bbody = stripslashes($bbody);
$bbody = htmlspecialchars($bbody);
Blog::create([
"title"=>$request->title,
"short_description"=>$request->short_desp,
"body"=>$bbody,
"cover_image"=>$fname,
"slug"=>str_replace(" ","_",$request->title),
]);
return redirect()->route('blog_index')->with('success','Blog created successfully');
}
此函数保存内容成功。但是当我在 laravel blade 视图中获取和显示时。 Ckeditor 内容将所有 html 显示为普通 text/string。我怎样才能强制渲染 html.
从数据库中获取博客的函数
public function show_Ablog(Request $request,$slug){
$blog=Blog::where('slug',$slug)->first();
return view('website.showAblog',compact('blog'));
}
在我的 blade 视图中
<div class="col-lg-12 dat">
{{($blog->body)}}
</div>
我已经尝试了
等所有功能htmlspecialchars
htmlentities
我该如何解决这个问题。
当您的数据包含 HTML 个标签时,请使用
在 blade 文件中编写代码,如
{!! $blog->body !!}
尝试使用 php 语法,如
{!! $博客->正文!!}
注意:确保您的编辑发送正确的 html 内容?