Yêu cầu Sep 16th, 2020 7:03 a.m. 273 1 3
  • 273 1 3
+1

Cách để nội dung gửi mail giữ nguyên format nhập từ textarea

Chia sẻ
  • 273 1 3

Mình làm chức năng gửi mail. Và nội dung email được nhập vào TextArea. Tuy nhiên khi gửi mail thì các ký tự xuống dòng đó bị cắt đi. Có các nào giữ nguyên không ạ?

mail template của mình: template.blade.php {{ $content_from_textarea }}

xin cảm ơn mọi người!

3 CÂU TRẢ LỜI


Đã trả lời Sep 16th, 2020 7:07 a.m.
Đã được chấp nhận
+4

Xin trả lời bạn, ở đây do line break bạn nhập ở textarea nó có dạng \n hoặc \r\n chứ không phải
nên nó ko đc.
Bạn sửa lại thành :
{!! nl2br($content) !!}
Là chắc chắn ok nhé.

Ý nghĩa câu lệnh bên trên là nó vẻ replace các ký tự xuống dòng dạng \n hoặc \r\n thành thẻ "br".

Hoặc cách khác là tích hợp thêm 1 texteditor nào cũng OK.

Chia sẻ
Đã trả lời Sep 16th, 2020 7:05 a.m.
0

bạn có thể sử dụng 2 hàm này để giữ nguyên cấu trúc html:

  • Htmlspecialchars

  • html_entity_decode

Chia sẻ
Avatar Ngân Kim @ngankim
Sep 16th, 2020 7:16 a.m.

cách này ko đc ông nhé.

Đã trả lời Sep 16th, 2020 7:09 a.m.
0

Bạn thử thêm thuộc css cho file blade:

white-space: pre-wrap;

Hoặc dùng :

{!! $content_from_textarea !!}
Chia sẻ
Avatar Ngân Kim @ngankim
Sep 16th, 2020 9:42 a.m.

cả 2 cách của bạn đều ko đc ak. Cách 1 là css cho nó hiện ở textarea thui, nên ko liên quan lắm. Cách 2 thì trong nội dụng email nó hiện nguyên cả \n bác ạ. 2 cách này e cũng đọc trên stackoverflow rồi. cảm ơn bác đã support!

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí