1

このようにMySQLにデータを保存しています-

5 fruits names are - 
Mango
Orange
Apple
Banana
Grapes

MySQL の新しい行にデータを保存できます。しかし、(選択クエリを使用して)フェッチしている間、HTML形式で1行に表示されます。

それを避ける方法は?

4

5 に答える 5

3

これを Perl で使用します。これはnl2brと同じです。

sub nl2br {
  my $t = shift or return;
  $t =~ s{([\r\n])}{<br />$1}g;
  return $t;
}
于 2012-06-05T14:46:12.560 に答える
1

私があなただったら、coma で保存し、表示するときに次のように置き換えます。

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)
于 2012-06-05T14:56:59.997 に答える
1

HTML は改行文字を尊重しません。nl2br()プレーンテキストを「改行」を含む HTML マークアップに変換するために使用します。

于 2012-06-05T14:43:12.667 に答える
0

あなたの場合、 all\nをに置き換えるだけ<br />です。

于 2012-06-05T14:44:13.033 に答える
0

私はあなたのコードについて何も知らないので、あなたがフォーマットを使用していないというのが私の最善の推測です。PHP またはスクリプトレットを使用してデータを取得している場合は、すべてのデータを配列として取得し、その配列を html 形式のループで出力できます。AJAX を利用して、HTML で表示したい方法で印刷することもできます。コードを投稿していただけると助かります。

于 2012-06-05T14:51:07.777 に答える