2011-06-14 103 views
15

我正在使用textarea將文本發送到我的數據庫。如何使用換行符回顯textarea的輸入?

截圖分貝:

enter image description here

當我從它刪除換行符的DB讀書,我怎麼可以讓他們在$行[ 'opmerkingen']?

enter image description here

+0

[如何從字符串中刪除換行符(無字符!)可能的重複?](http://stackoverflow.com/questions/10757671/how-to-remove-line-breaks-no-characters-from字符串) – kenorb 2015-03-03 00:30:30

回答

51

在顯示文本,使用nl2br()來換行轉換爲<br/>標籤,即代替<?php echo $row['text']; ?>,使用<?php echo nl2br($row['text']); ?>

默認情況下,瀏覽器將換行符顯示爲空格,因此必須將其轉換爲<br/>標籤。


對於那些誰發現這很有用 - 請考慮使用white-space: pre-line,由埃米爾Vikström建議。我不再是一個網絡傢伙,並且很容易無法驗證這一點,但Boaz在評論中表示,它受到所有現代瀏覽器的支持。如果是這樣,那麼應該優先使用nl2br()

17

的替代nl2br是利用CSS屬性white-space的:

white-space: pre-line; 
+2

+1恕我直言'nl2br()'*是*替代品。樣式和格式只能由CSS處理,因爲[所有現代瀏覽器都支持'white-space'屬性的'pre-line'值](https://developer.mozilla.org/en-US/docs/網絡/ CSS /空白)。 – Boaz 2014-02-24 12:12:59

3

我就把但不是單引號工作如下。

echo $row['text'].'\n'; 

雙引號。然後工作。

<textarea rows="10" cols="62" style="white-space: pre-line;" wrap="hard"> 
echo $row['text']."\n"; 
</textarea> 

當我們得到的數據是與\ r \ n正在添加。那裏還使用雙引號

相關問題