• June 2, 2017

    เวลาส่งมันจะเป็นข้อความติดกัน ไม่ขึ้นบรรทัดใหม่

    ใช้ฟังก์ชั่น
    $data=nl2br($data);

    รูปแบบการเว้นบรรทัดใน <textarea> จะแทนด้วย \n
    รูปแบบการแสดงผลของ html แทนด้วย <br>

    ถ้าต้องการ เขียนเว็บบรรทัด สมมุติว่า เขียน input form เป็น textarea แล้วมีการเว้นบรรทัด ก่อนที่เราจะบันทึกข้อความลงฐานข้อมูล ลองใช้ฟังก์ชั่นเช่น

    $TEXT= str_replace(“\n”, “<br>\n”, “$TEXT”);

    ฟังก์ชั่นนี้จะแปลง ค่าของ $TEXT จาก \n เปลี่ยนเป็น <br> จากนั้นให้บันทึกลงฐานข้อมูลตามปกติ
    และในส่วนเวลาดึงฐานข้อมูลมาแสดงนั้น มันก็จะเว้นบรรทัดตามที่เราเว้นใน text area

    การแก้ไขข้อความ ก็แปลงกลับมาอีกที เพื่อให้แสดงผลใน text area แล้วเว้นบรรทัดให้เหมือนที่เราเคยพิมพ์เอาไว้ตามปกติ

    การขึ้น บรรทัดใหม่ ใน textarea ด้วย Special Characters in HTML

    การขึ้นบรรทัดใหม่ใน textarea 3 กรณี

    1.ข้อมูลจากตัวแปร ต้องการแสดงใน textarea แบบขึ้นบรรทัดใหม่ตามต้องการ แทรก \r\n  ไว้ก่อนข้อความที่ต้องการขึ้นบรรทัดใหม่ แล้วนำค่าไปแสดงใน textarea

    <?php
    $data="line 1\r\nline2";
    ?>
    <textarea name="textarea" id="textarea2" cols="45" rows="5"><?=$data?></textarea>

    2. ข้อมูลที่กำหนดค่าเข้าไปใน textarea โดยตรง จะแทรกด้วย Special Characters  &#10; ไว้ก่อนข้อความที่ต้องการขึ้นบรรทัดใหม่

    <textarea name="textarea" id="textarea1" cols="45" rows="5">line 1&#10;line 2&#10;line 3</textarea>

    3. ข้อมูลที่ต้องการแสดงใน textarea ด้วย javascript (ในที่นี้ใช้ jQuery)  จะแทรก
    ด้วยเครื่องหมาย \r\n  ไว้ก่อนข้อความที่ต้องการขึ้นบรรทัดใหม่

    <textarea name="textarea" id="textarea3" cols="45" rows="5"></textarea>
    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
    <script type="text/javascript">
    $(function(){
        $("#textarea3").val("line 1\r\nline 2");
    });
    </script>

    Special Characters in HTML

    left single quote	 	&lsquo;	‘
    right single quote	 	&rsquo;	’
    single low-9 quote	 	&sbquo;	‚
    left double quote	 	&ldquo;	“
    right double quote	 	&rdquo;	”
    double low-9 quote	 	&bdquo;	„
    dagger	 	&dagger;	†
    double dagger	 	&Dagger;	‡
    per mill sign	 	&permil;	‰
    single left-pointing angle quote	 	&lsaquo;	‹
    single right-pointing angle quote	 	&rsaquo;	›
    black spade suit	 	&spades;	♠
    black club suit	 	&clubs;	♣
    black heart suit	 	&hearts;	♥
    black diamond suit	 	&diams;	♦
    overline, = spacing overscore	 	&oline;	‾
    leftward arrow	 	&larr;	←
    upward arrow	 	&uarr;	↑
    rightward arrow	 	&rarr;	→
    downward arrow	 	&darr;	↓
    trademark sign	&#x2122;	&trade;	™
    unused	&#00;-
    &#08;	 	 
    horizontal tab	&#09;	 	 
    line feed	&#10;	 	 
    unused	&#11;	 	 
    space	&#32;	 	 
    exclamation mark	&#33;	 	!
    double quotation mark	&#34;	&quot;	"
    number sign	&#35;	 	#
    dollar sign	&#36;	 	$
    percent sign	&#37;	 	%
    ampersand	&#38;	&amp;	&
    apostrophe	&#39;	 	'
    left parenthesis	&#40;	 	(
    right parenthesis	&#41;	 	)
    asterisk	&#42;	 	*
    plus sign	&#43;	 	+
    comma	&#44;	 	,
    hyphen	&#45;	 	-
    period	&#46;	 	.
    slash	&#47;	&frasl;	/
    digits 0-9	&#48;-
    &#57;	 	 
    colon	&#58;	 	:
    semicolon	&#59;	 	;
    less-than sign	&#60;	&lt;	<
    equals sign	&#61;	 	=
    greater-than sign	&#62;	&gt;	>
    question mark	&#63;	 	?
    at sign	&#64;	 	@
    uppercase letters A-Z	&#65;-
    &#90;	 	 
    left square bracket	&#91;	 	[
    backslash	&#92;	 	\
    right square bracket	&#93;	 	]
    caret	&#94;	 	^
    horizontal bar (underscore)	&#95;	 	_
    grave accent	&#96;	 	`
    lowercase letters a-z	&#97;-
    &#122;	 	 
    left curly brace	&#123;	 	{
    vertical bar	&#124;	 	|
    right curly brace	&#125;	 	}
    tilde	&#126;	 	~
    ellipses	&#133;	&hellip;	…
    en dash	&#150;	&ndash;	–
    em dash	&#151;	&mdash;	—
    unused	&#152;-
    &#159;	 	 
    nonbreaking space	&#160;	&nbsp;	 
    inverted exclamation	&#161;	&iexcl;	¡
    cent sign	&#162;	&cent;	¢
    pound sterling	&#163;	&pound;	£
    general currency sign	&#164;	&curren;	¤
    yen sign	&#165;	&yen;	¥
    broken vertical bar	&#166;	&brvbar; or &brkbar;	¦
    section sign	&#167;	&sect;	§
    umlaut	&#168;	&uml; or &die;	¨
    copyright	&#169;	&copy;	©
    feminine ordinal	&#170;	&ordf;	ª
    left angle quote	&#171;	&laquo;	«
    not sign	&#172;	&not;	¬
    soft hyphen	&#173;	&shy;	
    registered trademark	&#174;	&reg;	®
    macron accent	&#175;	&macr; or &hibar;	¯
    degree sign	&#176;	&deg;	°
    plus or minus	&#177;	&plusmn;	±
    superscript two	&#178;	&sup2;	²
    superscript three	&#179;	&sup3;	³
    acute accent	&#180;	&acute;	´
    micro sign	&#181;	&micro;	µ
    paragraph sign	&#182;	&para;	¶
    middle dot	&#183;	&middot;	·
    cedilla	&#184;	&cedil;	¸
    superscript one	&#185;	&sup1;	¹
    masculine ordinal	&#186;	&ordm;	º
    right angle quote	&#187;	&raquo;	»
    one-fourth	&#188;	&frac14;	¼
    one-half	&#189;	&frac12;	½
    three-fourths	&#190;	&frac34;	¾
    inverted question mark	&#191;	&iquest;	¿
    uppercase A, grave accent	&#192;	&Agrave;	À
    uppercase A, acute accent	&#193;	&Aacute;	Á
    uppercase A, circumflex accent	&#194;	&Acirc;	Â
    uppercase A, tilde	&#195;	&Atilde;	Ã
    uppercase A, umlaut	&#196;	&Auml;	Ä
    uppercase A, ring	&#197;	&Aring;	Å
    uppercase AE	&#198;	&AElig;	Æ
    uppercase C, cedilla	&#199;	&Ccedil;	Ç
    uppercase E, grave accent	&#200;	&Egrave;	È
    uppercase E, acute accent	&#201;	&Eacute;	É
    uppercase E, circumflex accent	&#202;	&Ecirc;	Ê
    uppercase E, umlaut	&#203;	&Euml;	Ë
    uppercase I, grave accent	&#204;	&Igrave;	Ì
    uppercase I, acute accent	&#205;	&Iacute;	Í
    uppercase I, circumflex accent	&#206;	&Icirc;	Î
    uppercase I, umlaut	&#207;	&Iuml;	Ï
    uppercase Eth, Icelandic	&#208;	&ETH;	Ð
    uppercase N, tilde	&#209;	&Ntilde;	Ñ
    uppercase O, grave accent	&#210;	&Ograve;	Ò
    uppercase O, acute accent	&#211;	&Oacute;	Ó
    uppercase O, circumflex accent	&#212;	&Ocirc;	Ô
    uppercase O, tilde	&#213;	&Otilde;	Õ
    uppercase O, umlaut	&#214;	&Ouml;	Ö
    multiplication sign	&#215;	&times;	×
    uppercase O, slash	&#216;	&Oslash;	Ø
    uppercase U, grave accent	&#217;	&Ugrave;	Ù
    uppercase U, acute accent	&#218;	&Uacute;	Ú
    uppercase U, circumflex accent	&#219;	&Ucirc;	Û
    uppercase U, umlaut	&#220;	&Uuml;	Ü
    uppercase Y, acute accent	&#221;	&Yacute;	Ý
    uppercase THORN, Icelandic	&#222;	&THORN;	Þ
    lowercase sharps, German	&#223;	&szlig;	ß
    lowercase a, grave accent	&#224;	&agrave;	à
    lowercase a, acute accent	&#225;	&aacute;	á
    lowercase a, circumflex accent	&#226;	&acirc;	â
    lowercase a, tilde	&#227;	&atilde;	ã
    lowercase a, umlaut	&#228;	&auml;	ä
    lowercase a, ring	&#229;	&aring;	å
    lowercase ae	&#230;	&aelig;	æ
    lowercase c, cedilla	&#231;	&ccedil;	ç
    lowercase e, grave accent	&#232;	&egrave;	è
    lowercase e, acute accent	&#233;	&eacute;	é
    lowercase e, circumflex accent	&#234;	&ecirc;	ê
    lowercase e, umlaut	&#235;	&euml;	ë
    lowercase i, grave accent	&#236;	&igrave;	ì
    lowercase i, acute accent	&#237;	&iacute;	í
    lowercase i, circumflex accent	&#238;	&icirc;	î
    lowercase i, umlaut	&#239;	&iuml;	ï
    lowercase eth, Icelandic	&#240;	&eth;	ð
    lowercase n, tilde	&#241;	&ntilde;	ñ
    lowercase o, grave accent	&#242;	&ograve;	ò
    lowercase o, acute accent	&#243;	&oacute;	ó
    lowercase o, circumflex accent	&#244;	&ocirc;	ô
    lowercase o, tilde	&#245;	&otilde;	õ
    lowercase o, umlaut	&#246;	&ouml;	ö
    division sign	&#247;	&divide;	÷
    lowercase o, slash	&#248;	&oslash;	ø
    lowercase u, grave accent	&#249;	&ugrave;	ù
    lowercase u, acute accent	&#250;	&uacute;	ú
    lowercase u, circumflex accent	&#251;	&ucirc;	û
    lowercase u, umlaut	&#252;	&uuml;	ü
    lowercase y, acute accent	&#253;	&yacute;	ý
    lowercase thorn, Icelandic	&#254;	&thorn;	þ
    lowercase y, umlaut	&#255;	&yuml;	ÿ
    Alpha	&Alpha;		Α
    alpha	&alpha;		α
    Beta	&Beta;		Β
    beta	&beta;		β
    Gamma	&Gamma;		Γ
    gamma	&gamma;		γ
    Delta	&Delta;		Δ
    delta	&delta;		δ
    Epsilon	&Epsilon;		Ε
    epsilon	&epsilon;		ε
    Zeta	&Zeta;		Ζ
    zeta	&zeta;		ζ
    Eta	&Eta;		Η
    eta	&eta;		η
    Theta	&Theta;		Θ
    theta	&theta;		θ
    Iota	&Iota;		Ι
    iota	&iota;		ι
    Kappa	&Kappa;		Κ
    kappa	&kappa;		κ
    Lambda	&Lambda;		Λ
    lambda	&lambda;		λ
    Mu	&Mu;		Μ
    mu	&mu;		μ
    Nu	&Nu;		Ν
    nu	&nu;		ν
    Xi	&Xi;		Ξ
    xi	&xi;		ξ
    Omicron	&Omicron;		Ο
    omicron	&omicron;		ο
    Pi	&Pi;		Π
    pi	&pi;		π
    Rho	&Rho;		Ρ
    rho	&rho;		ρ
    Sigma	&Sigma;		Σ
    sigma	&sigma;		σ
    Tau	&Tau;		Τ
    tau	&tau;		τ
    Upsilon	&Upsilon;		Υ
    upsilon	&upsilon;		υ
    Phi	&Phi;		Φ
    phi	&phi;		φ
    Chi	&Chi;		Χ
    chi	&chi;		χ
    Psi	&Psi;		Ψ
    psi	&psi;		ψ
    Omega	&Omega;		Ω
    omega	&omega;		ω
    password dot	&#9679;		●
    bullet	&#8226;		•

    http://www.degraeve.com/reference/specialcharacters.php

    echo ข้อความจากtextarea แล้วมันไม่ขึ้นบรรทัดให้ มันยาวๆไปบรรทัดเดียวเลย

    ถ้าผู้ใช้กด enter เวลาจะขึ้นบรรทัดใหม่ใน textarea เป็น \n
    ถ้าผู้ใช้กด enter เราก็แค่เรียกฟังชั่น str_replace เข้ามาเปลี่ยน \n เป็น <BR>

    แต่ถ้าผู้ใช้งานไม่กด Enter แต่พิมพ์ๆไปยาวๆเลยในหน้าแสดงผลของผู้ใช้งานตรง textarea มันก็ขึ้นบรรทัดใหม่ให้อยู่ แต่ในฐานข้อมูลมันไม่ได้

    ตอบ กำหนดความกว้างของ div ให้มัน

    <div style="width:800px;"><?php echo $textarea?></div>

    แอตทริบิวต์
    = ใหม่ใน HTML5

    คุณลักษณะ   ความคุ้มค่า   ลักษณะ
    autofocus   autofocus   ระบุว่าพื้นที่ข้อความโดยอัตโนมัติควรได้รับการมุ่งเน้นเมื่อโหลดหน้าเว็บ
    cols   number   ระบุความกว้างที่มองเห็นของพื้นที่ข้อความ
    dirname   textareaname.dir   ระบุว่าทิศทางข้อความของ textarea ที่จะถูกส่ง
    disabled   disabled   ระบุว่าพื้นที่ข้อความควรจะปิดการใช้งาน
    form   form_id   ระบุหนึ่งหรือมากกว่าหนึ่งรูปแบบพื้นที่ข้อความเป็น
    maxlength   number   ระบุจำนวนสูงสุดของตัวละครที่ได้รับอนุญาตในพื้นที่ข้อความ
    name   text   ระบุชื่อสำหรับพื้นที่ข้อความ
    placeholder   text   ระบุคำแนะนำสั้น ๆ ที่อธิบายถึงค่าที่คาดหวังของพื้นที่ข้อความ
    readonly   readonly   ระบุว่าพื้นที่ข้อความควรจะอ่านอย่างเดียว
    required   required   ระบุว่าพื้นที่ข้อความจะต้อง / ต้องกรอก
    rows   number   ระบุจำนวนที่มองเห็นของสายในพื้นที่ข้อความ
    wrap   hard ระบุว่าข้อความในพื้นที่ข้อความจะถูกห่อเมื่อส่งในรูปแบบ
    soft

    http://www.w3ii.com/th/tags/tag_textarea.html

    ตกแต่งกล่องรับข้อความ Text Input ( Text Box )
    ในภาษา HTML จะมีสคริปต์สั้นๆ คือ Text Input ( หรือ Text Box กล่องรับความ) เป็นกรอบสำหรับให้ผู้เข้าเว็บไซต์กรอกข้อมูลลงไป ลักษณะข้อมูลที่กรอกลงไปจะเป็นข้อความหนึ่งบรรทัด(ฟิลด์ข้อมูล) สำหรับส่งข้อมูลไปยังฝั่งผู้ดูแลเว็บ หรือ Server เพื่อเก็บเข้าไปไว้ในฐานข้อมูล หรือตอบโต้กับผู้ใช้งาน เป็นส่วนความสำคัญอย่างมากสำหรับการสร้างชุดคำสั่งที่จะรับข้อมูลจากผู้ใช้งานผ่านหน้าเว็บฯ ซึ่งเป็นกระบวนการแรกที่จะรับข้อมูลมา ก่อนทำการประมวลผล มีรูปแบบแตกต่างกันไป เหมาะในการนำไปใช้ในกรณีต่างๆ ที่จำเป็นสำหรับจัดการหน้าเอกสาร(HTML)ให้สวยงามและง่ายสำหรับผู้ใช้งาน โดยไม่จำเป็นต้องใช้ภาษา JAVA ที่มีความยุ่งยากซับซ้อน เป็นสคริปต์ที่สามารถประยุกต์นำไปใช้ในการจัดสร้างหน้าเอกสาร, การรับข้อมูล, บันทึกข้อความ หรือบันทึกระเบียนรายงานต่างๆได้สะดวก

    มาเริ่มต้นง่ายๆ ด้วยการเรียนรู้สคริปต์ Text Input ที่รับข้อความ

    แบบปกติ (รูปแบบทั่วไป)
    < input type=text name=user >

    การกำหนดขนาดของกล่องรับข้อความ
    < input type=text name=user size=50 >

    < input type=text name=user size=3 >

    การจำกัดจำนวนอักษร ในกล่องรับข้อความ
    < input type=text name=user maxlength=6 >
    ** จำกัดไว้ 6 ตัวอักษร

    การกำหนดค่าเริ่มต้นไว้บนกล่องรับข้อความ
    < input type=text name=user value=”ศูนย์วิศวกรรม” >

    การกำหนดไม่ให้แก้ไขข้อความ ในกล่องรับข้อความ
    < input type=text name=user value=”ศูนย์วิศวกรรม” readonly >

    การปกปิดตัวอักษร หรือ รหัสผ่าน ในกล่องรับข้อความ
    < input type=password name=user >

    CSS ย่อมาจากคำว่า Cascading Style Sheets บางทีอาจจะเรียกว่า Style Sheets หรือ CSS ซึ่งจริงๆแล้วมันคือตัวเดียวกัน

    CSS จะทำงานร่วมกับ HTML โดยจะกำหนดการแสดงผลของสิ่งต่างๆ บนเว็บ เช่น สีอักษร สีพื้นหลัง ขนาดตัวอักษร จัดการเลย์เอ้าท์ ให้สวยงามและอื่นๆ

    การกำหนดชนิดและขนาดตัวอักษร ในกล่องรับข้อความ
    < input type=text name=user style=”font: 16pt AngsanaUPC” >

    การกำหนดตัวอักษร เป็นตัวพิมพ์ใหญ่ทั้งหมด Display Uppercase ( เฉพาะอักษรภาษาอังกฤษ )
    < input type=text name=user style=”text-transform: uppercase” >

    การกำหนดสีให้ตัวอักษร
    < input type=text name=user style=”color: #0000FF” >

    การกำหนดความหนาตัวอักษร
    < input type=text name=user style=”font-weight: bold” >

    การจัดแนว ในกล่องรับข้อความ
    ปกติข้อความจะไปชิดด้านซ้ายมือ เราจะจัดไว้ชิดขวามือ ใช้สำหรับกรอกตัวเลข ( เหมือนเครื่องคิดเลข )
    < input type=text name=user style=”text-align: right” >

    การใส่สี ลงในกล่องรับข้อความ
    < input type=text name=user style=”background: #C0F9BD” >

    การใส่ภาพพื้นหลัง ลงในกล่องรับข้อความ
    < input type=text name=user style=”background-image:url(image/bg_pc_foot.gif)” >

    ใส่สีกรอบให้เป็นสีดำ
    < input type=text name=user style=”border: 1px black solid” >

    ใส่สีกรอบ เป็นสีน้ำเงิน
    < input type=text name=user style=”border: 1px #0000FF solid” >

    เพิ่มความหนาเส้นกรอบ
    < input type=text name=user style=”border: 3px black solid” >

    ทำกรอบเป็นจุด
    < input type=text name=user style=”border: 2px dotted” >

    การกำหนดไม่ให้มีกรอบ
    < input type=text name=user style=”border: none” >

    หรือ

    < input type=text name=user
    style=”BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none” >

    ** อยู่ข้างหน้านี้ ลองกรอกข้อมูล ( ลักษณะแบบนี้เอาไปใช้ทำเป็นช่องตารางบันทึกข้อความ )

    ทำกรอบให้เป็นเส้นใต้แบบคู่
    < input type=text name=user style=”border: none; border-bottom: 3px navy double” >

    ทำกรอบสีและมีเส้นใต้แบบคู่
    < input type=text name=user style=”border: 1px #0000FF solid; border-bottom: 3px navy double” >

    วิธีใส่รูปลงไปในช่อง Comment (Text Area) ซึ่งเป็นกรอบรับข้อความหลายๆบรรทัด
    < TEXTAREA style=”width: 500; height: 300; background: URL(image/mcot2.jpg) center no-repeat fixed” >

    ปัญหา Text Area พอดึงมาแสดงผลจาก sql มันไม่ขึ้นบรรทัดใหม่

    ต้อง การ เป็น แบบ ไหน?
    ตัดบันทัดอัตโนมัตร หรือ ให้ ขึ้น บันทันใหม่

    ตัดแบบอัตโนมัติ แบบว่าไม่ให้มันเลยตารางมราตั้งไว้
    และพอกด enter ให้มันขึ้นบรรทัดใหม่

    ใช้ function wordwrap()

    Description
    string wordwrap ( string str [, int width [, string break [, bool cut]]] )

    wordwrap() example

    <?php 
    $text = "The quick brown fox jumped over the lazy dog."; 
    $newtext = wordwrap($text, 20, "<br />\n"); 
    
    echo $newtext; 
    ?>

    NL2BR(); ฟังก์ชั่นขึ้นบรรทัดใหม่ PHP
    nl2br(); เป็นฟังก์ชั่นขึ้นบรรทัดใหม่ ของภาษา PHP
    การทำงานเมื่อพบข้อความที่ขึ้นบรรทัดใหม่ โดยการ Enter ฟังก์ชั่น nl2br นี้ก็จะแทน Enter ด้วย <br />

    ใช้งาน ฟังก์ชั่น nl2br();

    <?php
    $string="เป็นฟังก์ชั่นขึ้นบรรทัดใหม่ ของภาษา PHP
    ทดสอบก่อนใช้คำสั่ง และ หลังใช้คำสั่ง nl2br";
    echo "$string";
    ?>

    ก่อนใช้ ฟังก์ชั่น nl2br(); เมื่อเราใช้คำสั่ง echo เพื่อแสดงข้อความ
    ** ข้อความจะแสดงติดกันเป็นแถว โดยจะไม่แสดงตามรูปแบบเดิม

    หลังใช้
    ** ข้อความจะแสดงเป็นบรรทัด ตามรูปแบบข้อความต้นฉบับ

    ในกรณีใช้ร่วมกับ textarea หากต้องการดึงข้อมูจาก DB มาแสดงใน textarea ไม่ต้องใช้ nl2br();
    เพราะจะได้ <br /> ติดมาด้วย โดยปกติ tags ของ textarea จะขึ้นบรรทันใหม่ให้เอง  nl2br เป็นการแปลง newline (\n , \r\n) เวลากด enter ให้เป็น <br>

    nl2br ใช้สำหรับเปลี่ยน \r\n เป็น <br> \r\n เกิดจากการ enter ถ้าไม่ enter ยังไงมันก็ไม่ตัด

    ใช้ wordwrap();เข้ามาช่วยเหลือครับ

    wordwrap(nl2br($description),40,”\n”,true);// มันจะตัดคำแต่ละบรรทัด มีตัวอักษรครบ40คำแล้วขึ้นบรรทัดใหม่ให้เองครับ ส่วน nl2br นั้น ก็จะขึ้นบรรทัดใหม่ตามที่ผู้ใช้งานกด enter ปกติ

    ex

    $detail_ques=wordwrap(nl2br(htmlspecialchars($detail_ques)),40,"\n",true);

    textarea ให้ตัด <br> ออก โดยที่ให้บรรทัดติดกัน ทำอย่างไร

    echo nl2br($result[“description”]); ==> เป็น2บรรทัด มี BR ติดมา

    $txt = str_replace(“<br />”,” “,nl2br($result[‘description’]));  echo $txt; ==>ก็ไม่ได้

    คุณน่าจะผิดตั้งแต่ขั้นตอนการเก็บน่ะครับ อันที่จริง ควรเก็บข้อมูลจริง ๆ เลยครับ โดยไม่ต้องเข้า fucntion nl2br() เพราะ function นี้ไว้สำหรับแสดงผลครับ ส่วนเอากลับมาใน textarea ก็ไม่ต้องเข้า function nl2br() เช่นเดียวกันครั
    สำหรับในตัวอย่างขอบคุณลองใช้ \n ดู

    $txt = str_replace("\n"," ",$result['description']);  echo $txt;

    PHP – nl2br () เพื่อแสดงผลจากข้อมูลให้ถูกต้อง
    บางครั้งหากเราทำอะไรบางอย่างกับข้อมูลแบบ String ใน PHP หรือ Text ใน Sql บางครั้งการแสดงผลตรง ๆ อย่าง echo หรือ print อาจมีการเว้นบรรทัดไม่ถูกต้อง หรือแสดงข้อมูลบางอย่างผิดเพี้ยนไป บางครั้งสามารถแก้ได้ง่าย ๆ ด้วย function nl2br () ดังนี้

    print nl2br ($data); แทนที่แบบเดิม คือ print ($data);

    ในหลาย ๆ กรณีจะทำให้ได้การแสดงผลที่ถูกต้องมากขึ้น โดยเฉพาะอย่างยิ่งการใช้ร่วมกับ Tag TextArea ของ Html ที่เรารับข้อมูลเป็น Text แต่เมื่อต้องการแสดงผลออกมาอาจมีการเว้นบรรทัดไม่ตรงกับเจตนาดั้งเดิมของผู้ใช้ เราจึงจำเป็นต้องใช้ function nl2br () ช่วย
    http://php.net/manual/en/function.nl2br.php

    string nl2br ( string $string [, bool $is_xhtml = true ] )

    ตัวอย่าง

    <?php
    echo nl2br("yyyyyyyyyyyyyy\n xxxxx");
    ?>

    แสดงผล

    yyyyyyyyyyyyyy<br />
     xxxxxx

    เวลาพิมพ์ข้อความใน textarea แล้วกด enter ขึ้นบรรทัดใหม่
    พอนำมาแสดงผล มันไม่ขึ้นบรรทัดใหม่ให้

    ตอนเอาข้อมูลจากฐานข้อมูลมาแสดงผลให้ใช้คำสั่ง nl2br (Newline To BR)

    Ex
    จาก echo $a; ก็ใช้เป็น echo nl2br($a) แทน
    ในการแสดงผลก็จะขึ้นบรรทัดใหม่ให้เหมือนกับตอนที่พิมพ์ใน textarea

    ปกติเราถ้าใช้ textarea แล้วบันทึกลงฐานข้อมูลตอนที่กด enter มันจะมี \n ซ่อนไปในข้อมูลด้วยเมื่อจะนำไปแสดงใน html แล้วให้ขึ้นบรรทัดใหม่ก็ให้ใช้ nl2br แต่ถ้าจะเอาไปแสดงใน textarea ไม่ต้องใส่ nl2br เจ้า tag textarea มันจะขึ้นบรรทัดใหม่ให้เอง



เวอไนน์ไอคอร์ส

ประหยัดเวลากว่า 100 เท่า!






เวอไนน์เว็บไซต์⚡️
สร้างเว็บไซต์ ดูแลเว็บไซต์

Categories