Yêu cầu thg 9 16, 2020 7:03 SA 311 1 3
  • 311 1 3
+1

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

Chia sẻ
  • 311 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 thg 9 16, 2020 7:07 SA
Đã đượ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 thg 9 16, 2020 7:05 SA
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
thg 9 16, 2020 7:16 SA

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

Đã trả lời thg 9 16, 2020 7:09 SA
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
thg 9 16, 2020 9:42 SA

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í