I use CKEditor in my application for edit text
when i store my text in data base it will save with tags like this :
<p>Hello world</p><p>how are you ?</p>
and in my blade when i want to display this text, it will show with tags so i use strip_tags :
<div id="detail_textarea">
{{ strip_tags($letter->text) }}
</div>
but when i look at the page, styles does not work and all the text are sticky like this :
Hello worldhow are you ?
in this case seems to <br> or <p> does not work correctly.
what can i do ?
Please use {!! !!} instead of {{ }}
Update
<div id="detail_textarea">
{!! $letter->text !!}
</div>
Related
I want to put together a menu and get an icon dynamically.
the result i want is something like this:
Database table:
code:
<div class="card card-dashboard-eight">
<label class="main-content-label mb-1">Categoryes</label>
<span class="d-block mg-b-20 text-muted">Stores All</span>
<div class="list-group">
#foreach($tipos as $tipo)
<div class="list-group-item">
{{$tipo->icono }}
<p>{{$tipo->tipo }}</p>
</div>
#endforeach
</div>
</div>
but it prints the label not the icon
What should I do to show my icons?
I dont know the template engine you are using, but it seems to escape the html chars. maybe it just works by removing the double brackets ("{$tipo->icono}" instead of "{{$tipo->icono }}").
But for app-design reasons: i'd suggest to store just the type (or class) in the database. not an html-tag. meaning: the column "icono" should just contain f.e. "glass-martini" - instead of a complete html-tag. put the html-stuff in your template and add the class from your column there.
You have to use {!! !!} to display the raw unescaped HTML of your icon:
{!! $tipo->icono !!}
This way it doesn't get escaped with htmlspecialchars.
Basically {{ $var }} will be compiled to <?php htmlspecialchars($var); ?> and {!! $var !!} to <?php echo $var; ?>.
See the docs on how to display data in Blade templates for more information.
Im working in PHP Laravel to build an RSS FEED READER
I have read the XML file and it displays the title, description and link.
But the description contains image which i don't know how to display as an image.
Now the image part comes in html format as shown below:
Instead i want it to be displayed like this:
Here is my html code where the rss feed content display happens:
#foreach ($feed->item as $item)
<tbody>
<div class="card">
<div class="card-header">
{{ $item->title}}
</div>
<div class="card-header">
{{ $item->thumbnail}}
</div>
<div class="card-body">
{{$item->description}}
</div>
</div>
</tbody>
#endforeach
Can somebody please help me with this.
Thanks in advance.
You have HTML in your $item->description using the double Mustache{{ }} You are telling Laravel escape the data.
To render the HTML, you need to use instead {!! !!}
<div class="card-body">
{!! $item->description !!}
</div>
You can see more in the doc here: https://laravel.com/docs/7.x/blade#displaying-data
I want to display data in the HTML page. The data is like some code of line. There are some HTML tags like a, p, b etc. I want to display all as a text but only 1 as a tag.
I all ready try {!! $data->text !!} but it's convert all the text in a html tags.
Model data
public function scopeText()
{
$text='Tag link <p>paragraph</p>
Text link';
return $text;
}
html.blade.php
<div>
{{ $data->text() }}
</div>
Right now it show
Tag link <p>paragraph</p> <a href="#">Text
link</a>
when I user {!! !!}
Tag link paragraph Text link
when I user {{ strip_tags($data->text()) }}
Tag link paragraph Text link
when I user {{ strip_tags($data->text(), 'a') }}
Tag link <p>paragraph</p> <a href="#">Text
link</a>
But I want
Tag link <p>paragraph</p> Text link
only 1 'a' tag want to work as a tag and other things should print as a text.
I implement summernote (https://github.com/summernote/summernote) on the laravel 5.3
If I input data then save, on table seems like this :
<p>1. chelsea</p><p>2. mu</p><p>3. city</p><p>4. liverpool</p><p>5. arsenal</p>
How can I display it without tag p?
So when it displayed will seems like this :
1. chelsea
2. mu
3. city
4. liverpool
5. arsenal
How can I do it?
First edit the text accordingly to your desired format inside summernote text editor, and save it.
Then you can use this blade syntax to show the text formated:
{!! message !!}
Simplest way to show:
<?php echo $variable or html code ; ?>
because in PHP, echo is used to interpret html code.
$text = "<p>1. chelsea</p><p>2. mu</p><p>3. city</p><p>4. liverpool</p><p>5. arsenal</p>";
echo strip_tags($text);
Use strip_tags php method to convert html to string.
Refernce link
#foreach ($GuideCont as $item )
<input type="text" value="{{$item->id}}" hidden>
<div class="card">
<div class="card-header border-bottom border-info">
<h3 class="card-title">{{$item->title }}</h3>
</div>
<div class="card-body">
{!!$item->description !!} {{--// SummerNote Data --}}
</div>
</div>
#endforeach
So i am currently working with nl2br. I don't know whether this is a bug, or a wrong way to doing things from my side but i encounter this. First of all, here's the snippet :
#foreach($dataList as $data)
<div class="productDesc">
{!! nl2br(e($data->product->description)) !!}
</div>
#endforeach
When i run this, the output is only the description of the first product. I initially thought there's something wrong with my code but when i do a debug like this :
#foreach($dataList as $data)
{{ $data->id }}
<div class="productDesc">
{{ $data->id }}
{!! nl2br(e($data->product->description)) !!}
</div>
{{ $data->id }}
#endforeach
The result in the 2nd row is :
2
1 This is a description for 1st product
2
As you can see, it somehow ignore the forwhile loop parameter. Can someone inform whether there's a solution for this or am i just code it wrongly ?