این اصلا ربطی به لاراول ندارد
1- اول باید direction و text-align رو در css درست کنید
2- باید از ابزاری مانند ckeditor استفاده کنید , خود ckedit هر خط رو معادل یک تگ <p> در نظر می گیرد ( پیش فرض اینه )
اگر هم نخاید از تگ <p> استفاده کنید ؛ باید از تگ <pre> استفاده کنید که اصلا پیشنهاد نمیشه و مشکلات عجیبی داره چه در قالب چه در بحث SEO
@bamdadمن الان از ckeditor استفاده نمیکنم کلا از تکست اریا معمولی استفاده میکنم کلا برا بخش نظرات هم همینه کاربر نظر تایپ میکنه شاید چند خط رو اینتر بزنه ولی موقع نمایش خط ها متصل به هم هستن قبلا انجامش دادما الان حضور ذهن ندارم شده تو مخی برام ربطی به استایل css هم نداره موقع نمایش یه کاری با کد ها انجام میدادم که این اعمال میششد الان یادم نمیاد
فکر کنم منظورت استفاده از این توی css هست.
یه تست کن ببین کارو راه میندازه؟
white-space: pre-line;
دوست خوبم قالبی که من استفاده میکنم یه قالب مدرن و حرفه ایه نقصیاز بابت css نداره توی توضیحات مقاله وقتی من توی پنل توضیحات رو ست میکنم میخام به همون روش که تایپ کردم اینتر ها - اسپیس ها همون شکلی هم توی نمایش نشون داده بشه مثلا من توی پنل این مدلی توضیحات رو فرستادم برای سمت دیتابیس
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ، و با استفاده از طراحان گرافیک است،
چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است،
و برای شرایط فعلی تکنولوژی مورد نیاز، و کاربردهای متنوع با هدف بهبود ابزارهای کاربردی می باشد،
کتابهای زیادی در شصت و سه درصد گذشته حال و آینده، شناخت فراوان جامعه و متخصصان را می طلبد، تا با نرم افزارها شناخت
اما موقع نمایش
{!!$article->body!!}
به این شکل در میاد ک توی خط بعد گذاشتک یعنی خط ها که من اینتر زدم بهم وصل میشه
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ، و با استفاده از طراحان گرافیک است، چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است، و برای شرایط فعلی تکنولوژی مورد نیاز، و کاربردهای متنوع با هدف بهبود ابزارهای کاربردی می باشد، کتابهای زیادی در شصت و سه درصد گذشته حال و آینده، شناخت فراوان جامعه و متخصصان را می طلبد، تا با نرم افزارها شناخت
دوست عزیز متوجه شدم ، باید این کار رو انجام بدی
هنگام ارسال باید در textarea ، این attribute را اضافه کنی :
<textarea rows="10" cols="50" name="usrtxt" wrap="hard">
در واقع باید از wrap و با مقدار hard استفاده کنی ، همچنین cols رو هم باید مشخض کنی ولی rows اجباری نیس
از اون سمت هم موقع دریافت هرجایی که میخوای نمایش داده بشه باید به این صورت باشه
<p style="white-space: pre-wrap;">
// masalan inja namayesh midi matno
</p>
در واقع باید white-space رو برابر با اون مقداری که گفتم بنویسی تا هموجوری نمایش داده بشه
نتیجه گیری :
برای دریافت از wrap=hard استفاده کن که همانطور که نوشته شده دریافت بشه
برای چاپ هم از white-space=pre-wrap استفاده کن که متن رو به همون صورت که ذخیره شده ، نمایش بده
یک روش رایج دیگه هم استفاده از تابع nl2br هست. یعنی موقع نمایش این جور متن ها کافیه به این شکل عمل کنید:
{!! nl2br($article->body) !!}
کار این تابع تبدیل کردن new line ها به break line یا همون تگ <br> هست.
پ ن: مراقب مسائل امنیتی هنگام استفاده از {!! !!} باشید.
@mhyeganeh
محمد عزیز من فقط برای بخش توضیحات مقالات یا پرداکت ها از این {!! !!} استفاده میکنم فقط
مسئله ای سر تعداد موارد استفاده ازش وجود نداره. نکته مهمش فقط این هست که نباید از این روش برای رندر و نمایش مواردی استفاده کنید که توسط مخاطبان عام وبسایتتون نوشته شدند. مثل متن کامنت و پیام و...
چون اینجوری امکانش فراهم میشه که بجای متن پیام، یک تکه کد جاوااسکرپیتی مخرب یا جاسوسانه نوشته بشه و شما با این روش اون کد رو بدون اینکه خودتون خبر دار بشید اجراش میکنید.
ولی اگر از محتوای داخلی مواردی که میخواید ازش استفاده کنید خاطر جمع هستید مسئله ی خاصی نباید وجود داشته باشه.
ضمنا یک روش دیگه هم اینه که پیش از رندر کردن مقدار مورد نظر اون رو به تابع e() در لاراول پاس بدید تا ضدعفونی 😉 بشه.
{!! nl2br(e($article->body)) !!}
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟