我在MySQL中存储数据 -
5 fruits names are -
Mango
Orange
Apple
Banana
Grapes
我能够在MySQL的新行中存储数据。但是在取回它时(使用select查询) 它以HTML格式显示在一行中。
如何避免?
答案 0 :(得分:3)
在Perl中使用它,它与nl2br相同。
sub nl2br {
my $t = shift or return;
$t =~ s{([\r\n])}{<br />$1}g;
return $t;
}
答案 1 :(得分:1)
HTML不支持换行符。使用nl2br()
将明文转换为HTML标记,其中包含“换行符”。
答案 2 :(得分:1)
如果我是你,我将用昏迷存储它,当你显示替换时,像这样:
mysql> create table fruits (fruit varchar(200));
Query OK, 0 rows affected (0.04 sec)
mysql> insert into fruits values ('banana, apple, orange, grapes');
Query OK, 1 row affected (0.03 sec)
mysql> select * from fruits;
+-------------------------------+
| fruit |
+-------------------------------+
| banana, apple, orange, grapes |
+-------------------------------+
1 row in set (0.00 sec)
mysql> select replace(fruit,',','<br />') from fruits;
+----------------------------------------------+
| replace(fruit,',','<br />') |
+----------------------------------------------+
| banana<br /> apple<br /> orange<br /> grapes |
+----------------------------------------------+
1 row in set (0.00 sec)
并且您没有依赖于显示列表的方式,只需更改您想要的任何标签的
标签
或者如果您想要列表,可以使用此
mysql> select concat('<ol><li>',replace(fruit,',','</li><li>'),'</li></ol>') from fruits;
+-------------------------------------------------------------------------+
| concat('<ol><li>',replace(fruit,',','</li><li>'),'</li></ol>') |
+-------------------------------------------------------------------------+
| <ol><li>banana</li><li> apple</li><li> orange</li><li> grapes</li></ol> |
+-------------------------------------------------------------------------+
1 row in set (0.00 sec)
答案 3 :(得分:0)
在您的情况下,只需将所有\n
替换为<br />
。
答案 4 :(得分:0)
由于我对您的代码一无所知,我最好的猜测是您没有使用任何格式。 如果您使用php或scriptlet来检索数据,则可以将所有数据放入阵列并打印 在html格式的循环上的那个数组。 您还可以使用AJAX并以您希望以HTML格式显示的方式将其打印出来。 如果你发布一些代码会很有帮助。